{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# R语言数据处理120题\n",
    "## 公众号：早起Python\n",
    "### 题：刘早起\n",
    "### 解：陈熹\n",
    "本套习题源于[pandas进阶修炼120题系列](https://mp.weixin.qq.com/s/WvgOlFGK0FToobl9ws2oSQ)\n",
    "\n",
    "但由于R语言和Pandas有部分差别较大，在不修改原题的基础上制作完成\n",
    "\n",
    "所有代码均已在本地测试通过，但是由于不同包的版本不同可能会导致代码报错\n",
    "\n",
    "请自行按照提示修改或者百度解决"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 依赖以下包，请提前安装\n",
    "- tibble\n",
    "- Hmisc\n",
    "- readr\n",
    "- rJava\n",
    "- xlsxjars\n",
    "- dplyr\n",
    "- stringr\n",
    "- openxlsx\n",
    "- pryr\n",
    "- ggplot2\n",
    "- patchwork\n",
    "- mice\n",
    "- glue\n",
    "- tidyr\n",
    "- RcppRoll\n",
    "- plyr"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 第一期｜基础20题"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "### 1.数据创建"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [],
   "source": [
    "### 方法1\n",
    "df <- data.frame(\n",
    "  \"grammer\" = c(\"Python\",\"C\",\"Java\",\"GO\",NA,\"SQL\",\"PHP\",\"Python\"),\n",
    "  \"score\" = c(1,2,NA,4,5,6,7,10)\n",
    ")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<table>\n",
       "<thead><tr><th scope=col>grammer</th><th scope=col>score</th></tr></thead>\n",
       "<tbody>\n",
       "\t<tr><td>Python</td><td> 1    </td></tr>\n",
       "\t<tr><td>C     </td><td> 2    </td></tr>\n",
       "\t<tr><td>Java  </td><td>NA    </td></tr>\n",
       "\t<tr><td>GO    </td><td> 4    </td></tr>\n",
       "\t<tr><td>NA    </td><td> 5    </td></tr>\n",
       "\t<tr><td>SQL   </td><td> 6    </td></tr>\n",
       "\t<tr><td>PHP   </td><td> 7    </td></tr>\n",
       "\t<tr><td>Python</td><td>10    </td></tr>\n",
       "</tbody>\n",
       "</table>\n"
      ],
      "text/latex": [
       "\\begin{tabular}{r|ll}\n",
       " grammer & score\\\\\n",
       "\\hline\n",
       "\t Python &  1    \\\\\n",
       "\t C      &  2    \\\\\n",
       "\t Java   & NA    \\\\\n",
       "\t GO     &  4    \\\\\n",
       "\t NA     &  5    \\\\\n",
       "\t SQL    &  6    \\\\\n",
       "\t PHP    &  7    \\\\\n",
       "\t Python & 10    \\\\\n",
       "\\end{tabular}\n"
      ],
      "text/markdown": [
       "\n",
       "grammer | score | \n",
       "|---|---|---|---|---|---|---|---|\n",
       "| Python |  1     | \n",
       "| C      |  2     | \n",
       "| Java   | NA     | \n",
       "| GO     |  4     | \n",
       "| NA     |  5     | \n",
       "| SQL    |  6     | \n",
       "| PHP    |  7     | \n",
       "| Python | 10     | \n",
       "\n",
       "\n"
      ],
      "text/plain": [
       "  grammer score\n",
       "1 Python   1   \n",
       "2 C        2   \n",
       "3 Java    NA   \n",
       "4 GO       4   \n",
       "5 NA       5   \n",
       "6 SQL      6   \n",
       "7 PHP      7   \n",
       "8 Python  10   "
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "df"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [],
   "source": [
    "### 方法2\n",
    "library(tibble)\n",
    "df <- tibble(\n",
    "  \"grammer\" = c(\"Python\",\"C\",\"Java\",\"GO\",NA,\"SQL\",\"PHP\",\"Python\"),\n",
    "  \"score\" = c(1,2,NA,4,5,6,7,10)\n",
    ")"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "### 2.数据提取\n",
    "提取含有字符串\"Python\"的行"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<table>\n",
       "<thead><tr><th scope=col>grammer</th><th scope=col>score</th></tr></thead>\n",
       "<tbody>\n",
       "\t<tr><td>Python</td><td> 1    </td></tr>\n",
       "\t<tr><td>Python</td><td>10    </td></tr>\n",
       "</tbody>\n",
       "</table>\n"
      ],
      "text/latex": [
       "\\begin{tabular}{r|ll}\n",
       " grammer & score\\\\\n",
       "\\hline\n",
       "\t Python &  1    \\\\\n",
       "\t Python & 10    \\\\\n",
       "\\end{tabular}\n"
      ],
      "text/markdown": [
       "\n",
       "grammer | score | \n",
       "|---|---|\n",
       "| Python |  1     | \n",
       "| Python | 10     | \n",
       "\n",
       "\n"
      ],
      "text/plain": [
       "  grammer score\n",
       "1 Python   1   \n",
       "2 Python  10   "
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "df[which(df$grammer == 'Python'),]"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "### 3.数据提取\n",
    "输出df的所有列名"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<ol class=list-inline>\n",
       "\t<li>'grammer'</li>\n",
       "\t<li>'score'</li>\n",
       "</ol>\n"
      ],
      "text/latex": [
       "\\begin{enumerate*}\n",
       "\\item 'grammer'\n",
       "\\item 'score'\n",
       "\\end{enumerate*}\n"
      ],
      "text/markdown": [
       "1. 'grammer'\n",
       "2. 'score'\n",
       "\n",
       "\n"
      ],
      "text/plain": [
       "[1] \"grammer\" \"score\"  "
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "names(df)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "### 4.数据修改\n",
    "修改第二列列名为'popularity'"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [],
   "source": [
    "options(warn=-1)\n",
    "library(dplyr)\n",
    "library(tidyverse)\n",
    "df <- df %>% rename(popularity = score)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<table>\n",
       "<thead><tr><th scope=col>grammer</th><th scope=col>popularity</th></tr></thead>\n",
       "<tbody>\n",
       "\t<tr><td>Python</td><td> 1    </td></tr>\n",
       "\t<tr><td>C     </td><td> 2    </td></tr>\n",
       "\t<tr><td>Java  </td><td>NA    </td></tr>\n",
       "\t<tr><td>GO    </td><td> 4    </td></tr>\n",
       "\t<tr><td>NA    </td><td> 5    </td></tr>\n",
       "\t<tr><td>SQL   </td><td> 6    </td></tr>\n",
       "\t<tr><td>PHP   </td><td> 7    </td></tr>\n",
       "\t<tr><td>Python</td><td>10    </td></tr>\n",
       "</tbody>\n",
       "</table>\n"
      ],
      "text/latex": [
       "\\begin{tabular}{r|ll}\n",
       " grammer & popularity\\\\\n",
       "\\hline\n",
       "\t Python &  1    \\\\\n",
       "\t C      &  2    \\\\\n",
       "\t Java   & NA    \\\\\n",
       "\t GO     &  4    \\\\\n",
       "\t NA     &  5    \\\\\n",
       "\t SQL    &  6    \\\\\n",
       "\t PHP    &  7    \\\\\n",
       "\t Python & 10    \\\\\n",
       "\\end{tabular}\n"
      ],
      "text/markdown": [
       "\n",
       "grammer | popularity | \n",
       "|---|---|---|---|---|---|---|---|\n",
       "| Python |  1     | \n",
       "| C      |  2     | \n",
       "| Java   | NA     | \n",
       "| GO     |  4     | \n",
       "| NA     |  5     | \n",
       "| SQL    |  6     | \n",
       "| PHP    |  7     | \n",
       "| Python | 10     | \n",
       "\n",
       "\n"
      ],
      "text/plain": [
       "  grammer popularity\n",
       "1 Python   1        \n",
       "2 C        2        \n",
       "3 Java    NA        \n",
       "4 GO       4        \n",
       "5 NA       5        \n",
       "6 SQL      6        \n",
       "7 PHP      7        \n",
       "8 Python  10        "
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "df"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "### 5.数据统计\n",
    "统计grammer列中每种编程语言出现的次数·"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 23,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "\n",
       "     C     GO   Java    PHP Python    SQL \n",
       "     1      1      1      1      2      1 "
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "table(df$grammer)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "### 6.缺失值处理\n",
    "将空值用上下值的平均值填充"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 26,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [
    {
     "ename": "ERROR",
     "evalue": "Error: package ‘survival’ 2.39.4 was found, but >= 2.40.1 is required by ‘Hmisc’\n",
     "output_type": "error",
     "traceback": [
      "Error: package ‘survival’ 2.39.4 was found, but >= 2.40.1 is required by ‘Hmisc’\nTraceback:\n",
      "1. library(Hmisc)",
      "2. .getRequiredPackages2(pkgInfo, quietly = quietly)",
      "3. stop(gettextf(msg, sQuote(pkg), current, dep$op, target, sQuote(pkgname)), \n .     call. = FALSE, domain = NA)"
     ]
    }
   ],
   "source": [
    "#将survival升级即可\n",
    "library(Hmisc)\n",
    "index <- which(is.na(df$popularity))\n",
    "df$popularity <- impute(df$popularity,\n",
    "                       (unlist(df[index-1, 2] +\n",
    "                               df[index+1, 2]))/2)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "### 7.数据提取\n",
    "提取popularity列中值大于3的行"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 29,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true,
    "scrolled": true
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<table>\n",
       "<thead><tr><th scope=col>grammer</th><th scope=col>popularity</th></tr></thead>\n",
       "<tbody>\n",
       "\t<tr><td>GO    </td><td> 4    </td></tr>\n",
       "\t<tr><td>NA    </td><td> 5    </td></tr>\n",
       "\t<tr><td>SQL   </td><td> 6    </td></tr>\n",
       "\t<tr><td>PHP   </td><td> 7    </td></tr>\n",
       "\t<tr><td>Python</td><td>10    </td></tr>\n",
       "</tbody>\n",
       "</table>\n"
      ],
      "text/latex": [
       "\\begin{tabular}{r|ll}\n",
       " grammer & popularity\\\\\n",
       "\\hline\n",
       "\t GO     &  4    \\\\\n",
       "\t NA     &  5    \\\\\n",
       "\t SQL    &  6    \\\\\n",
       "\t PHP    &  7    \\\\\n",
       "\t Python & 10    \\\\\n",
       "\\end{tabular}\n"
      ],
      "text/markdown": [
       "\n",
       "grammer | popularity | \n",
       "|---|---|---|---|---|\n",
       "| GO     |  4     | \n",
       "| NA     |  5     | \n",
       "| SQL    |  6     | \n",
       "| PHP    |  7     | \n",
       "| Python | 10     | \n",
       "\n",
       "\n"
      ],
      "text/plain": [
       "  grammer popularity\n",
       "1 GO       4        \n",
       "2 NA       5        \n",
       "3 SQL      6        \n",
       "4 PHP      7        \n",
       "5 Python  10        "
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "df %>%\n",
    "  filter(popularity > 3)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "### 8.数据去重\n",
    "按照grammer列进行去重"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<table>\n",
       "<thead><tr><th scope=col>grammer</th><th scope=col>popularity</th></tr></thead>\n",
       "<tbody>\n",
       "\t<tr><td>Python</td><td> 1    </td></tr>\n",
       "\t<tr><td>C     </td><td> 2    </td></tr>\n",
       "\t<tr><td>Java  </td><td>NA    </td></tr>\n",
       "\t<tr><td>GO    </td><td> 4    </td></tr>\n",
       "\t<tr><td>NA    </td><td> 5    </td></tr>\n",
       "\t<tr><td>SQL   </td><td> 6    </td></tr>\n",
       "\t<tr><td>PHP   </td><td> 7    </td></tr>\n",
       "</tbody>\n",
       "</table>\n"
      ],
      "text/latex": [
       "\\begin{tabular}{r|ll}\n",
       " grammer & popularity\\\\\n",
       "\\hline\n",
       "\t Python &  1    \\\\\n",
       "\t C      &  2    \\\\\n",
       "\t Java   & NA    \\\\\n",
       "\t GO     &  4    \\\\\n",
       "\t NA     &  5    \\\\\n",
       "\t SQL    &  6    \\\\\n",
       "\t PHP    &  7    \\\\\n",
       "\\end{tabular}\n"
      ],
      "text/markdown": [
       "\n",
       "grammer | popularity | \n",
       "|---|---|---|---|---|---|---|\n",
       "| Python |  1     | \n",
       "| C      |  2     | \n",
       "| Java   | NA     | \n",
       "| GO     |  4     | \n",
       "| NA     |  5     | \n",
       "| SQL    |  6     | \n",
       "| PHP    |  7     | \n",
       "\n",
       "\n"
      ],
      "text/plain": [
       "  grammer popularity\n",
       "1 Python   1        \n",
       "2 C        2        \n",
       "3 Java    NA        \n",
       "4 GO       4        \n",
       "5 NA       5        \n",
       "6 SQL      6        \n",
       "7 PHP      7        "
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "df[!duplicated(df$grammer),]"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "### 9.数据计算\n",
    "计算popularity列平均值"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 31,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "[1] NA"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "#> 第一种\n",
    "mean(df$popularity)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 32,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<table>\n",
       "<thead><tr><th scope=col>mean</th></tr></thead>\n",
       "<tbody>\n",
       "\t<tr><td>NA</td></tr>\n",
       "</tbody>\n",
       "</table>\n"
      ],
      "text/latex": [
       "\\begin{tabular}{r|l}\n",
       " mean\\\\\n",
       "\\hline\n",
       "\t NA\\\\\n",
       "\\end{tabular}\n"
      ],
      "text/markdown": [
       "\n",
       "mean | \n",
       "|---|\n",
       "| NA | \n",
       "\n",
       "\n"
      ],
      "text/plain": [
       "  mean\n",
       "1 NA  "
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "#> 第二种\n",
    "df %>%\n",
    "  summarise(mean = mean(popularity))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "### 10.格式转换\n",
    "将grammer列转换为list"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 33,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<ol class=list-inline>\n",
       "\t<li>Python</li>\n",
       "\t<li>C</li>\n",
       "\t<li>Java</li>\n",
       "\t<li>GO</li>\n",
       "\t<li>NA</li>\n",
       "\t<li>SQL</li>\n",
       "\t<li>PHP</li>\n",
       "\t<li>Python</li>\n",
       "</ol>\n"
      ],
      "text/latex": [
       "\\begin{enumerate*}\n",
       "\\item Python\n",
       "\\item C\n",
       "\\item Java\n",
       "\\item GO\n",
       "\\item NA\n",
       "\\item SQL\n",
       "\\item PHP\n",
       "\\item Python\n",
       "\\end{enumerate*}\n"
      ],
      "text/markdown": [
       "1. Python\n",
       "2. C\n",
       "3. Java\n",
       "4. GO\n",
       "5. NA\n",
       "6. SQL\n",
       "7. PHP\n",
       "8. Python\n",
       "\n",
       "\n"
      ],
      "text/plain": [
       "[1] Python C      Java   GO     <NA>   SQL    PHP    Python\n",
       "Levels: C GO Java PHP Python SQL"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "unlist(df$grammer)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "### 11.数据保存\n",
    "将DataFrame保存为EXCEL"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 34,
   "metadata": {
    "collapsed": true,
    "deletable": true,
    "editable": true
   },
   "outputs": [],
   "source": [
    "#R对EXCEL文件不太友好\n",
    "#第一种方法：利用readr包转为csv再用EXCEL打开\n",
    "#文件本质依然是csv\n",
    "library(readr)\n",
    "write_excel_csv(df,'filename.csv')"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "### 12.数据查看\n",
    "查看数据行列数"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<ol class=list-inline>\n",
       "\t<li>8</li>\n",
       "\t<li>2</li>\n",
       "</ol>\n"
      ],
      "text/latex": [
       "\\begin{enumerate*}\n",
       "\\item 8\n",
       "\\item 2\n",
       "\\end{enumerate*}\n"
      ],
      "text/markdown": [
       "1. 8\n",
       "2. 2\n",
       "\n",
       "\n"
      ],
      "text/plain": [
       "[1] 8 2"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "dim(df)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "### 13.提取数据\n",
    "提取popularity列值大于3小于7的行"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<table>\n",
       "<thead><tr><th scope=col>grammer</th><th scope=col>popularity</th></tr></thead>\n",
       "<tbody>\n",
       "\t<tr><td>GO </td><td>4  </td></tr>\n",
       "\t<tr><td>NA </td><td>5  </td></tr>\n",
       "\t<tr><td>SQL</td><td>6  </td></tr>\n",
       "</tbody>\n",
       "</table>\n"
      ],
      "text/latex": [
       "\\begin{tabular}{r|ll}\n",
       " grammer & popularity\\\\\n",
       "\\hline\n",
       "\t GO  & 4  \\\\\n",
       "\t NA  & 5  \\\\\n",
       "\t SQL & 6  \\\\\n",
       "\\end{tabular}\n"
      ],
      "text/markdown": [
       "\n",
       "grammer | popularity | \n",
       "|---|---|---|\n",
       "| GO  | 4   | \n",
       "| NA  | 5   | \n",
       "| SQL | 6   | \n",
       "\n",
       "\n"
      ],
      "text/plain": [
       "  grammer popularity\n",
       "1 GO      4         \n",
       "2 NA      5         \n",
       "3 SQL     6         "
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "library(dplyr)\n",
    "df %>%\n",
    "  filter(popularity > 3 & popularity <7)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "### 14.数据处理\n",
    "交换两列数据"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {
    "collapsed": true,
    "deletable": true,
    "editable": true
   },
   "outputs": [],
   "source": [
    "df <- df %>%\n",
    "    select(popularity,everything())"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "### 15.数据提取\n",
    "提取popularity列最大值所在行"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 20,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<table>\n",
       "<thead><tr><th scope=col>popularity</th><th scope=col>grammer</th></tr></thead>\n",
       "<tbody>\n",
       "</tbody>\n",
       "</table>\n"
      ],
      "text/latex": [
       "\\begin{tabular}{r|ll}\n",
       " popularity & grammer\\\\\n",
       "\\hline\n",
       "\\end{tabular}\n"
      ],
      "text/markdown": [
       "\n",
       "popularity | grammer | \n",
       "||\n",
       "\n",
       "\n"
      ],
      "text/plain": [
       "     popularity grammer"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "df %>%\n",
    "  filter(popularity == max(popularity))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "### 16.数据查看\n",
    "查看最后5行数据"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<table>\n",
       "<thead><tr><th></th><th scope=col>popularity</th><th scope=col>grammer</th></tr></thead>\n",
       "<tbody>\n",
       "\t<tr><th scope=row>4</th><td> 4    </td><td>GO    </td></tr>\n",
       "\t<tr><th scope=row>5</th><td> 5    </td><td>NA    </td></tr>\n",
       "\t<tr><th scope=row>6</th><td> 6    </td><td>SQL   </td></tr>\n",
       "\t<tr><th scope=row>7</th><td> 7    </td><td>PHP   </td></tr>\n",
       "\t<tr><th scope=row>8</th><td>10    </td><td>Python</td></tr>\n",
       "</tbody>\n",
       "</table>\n"
      ],
      "text/latex": [
       "\\begin{tabular}{r|ll}\n",
       "  & popularity & grammer\\\\\n",
       "\\hline\n",
       "\t4 &  4     & GO    \\\\\n",
       "\t5 &  5     & NA    \\\\\n",
       "\t6 &  6     & SQL   \\\\\n",
       "\t7 &  7     & PHP   \\\\\n",
       "\t8 & 10     & Python\\\\\n",
       "\\end{tabular}\n"
      ],
      "text/markdown": [
       "\n",
       "| <!--/--> | popularity | grammer | \n",
       "|---|---|---|---|---|\n",
       "| 4 |  4     | GO     | \n",
       "| 5 |  5     | NA     | \n",
       "| 6 |  6     | SQL    | \n",
       "| 7 |  7     | PHP    | \n",
       "| 8 | 10     | Python | \n",
       "\n",
       "\n"
      ],
      "text/plain": [
       "  popularity grammer\n",
       "4  4         GO     \n",
       "5  5         NA     \n",
       "6  6         SQL    \n",
       "7  7         PHP    \n",
       "8 10         Python "
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "tail(df,5)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "### 17.数据修改\n",
    "删除最后一数据"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 22,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<table>\n",
       "<thead><tr><th scope=col>popularity</th><th scope=col>grammer</th></tr></thead>\n",
       "<tbody>\n",
       "\t<tr><td> 1    </td><td>Python</td></tr>\n",
       "\t<tr><td> 2    </td><td>C     </td></tr>\n",
       "\t<tr><td>NA    </td><td>Java  </td></tr>\n",
       "\t<tr><td> 4    </td><td>GO    </td></tr>\n",
       "\t<tr><td> 5    </td><td>NA    </td></tr>\n",
       "\t<tr><td> 6    </td><td>SQL   </td></tr>\n",
       "\t<tr><td> 7    </td><td>PHP   </td></tr>\n",
       "</tbody>\n",
       "</table>\n"
      ],
      "text/latex": [
       "\\begin{tabular}{r|ll}\n",
       " popularity & grammer\\\\\n",
       "\\hline\n",
       "\t  1     & Python\\\\\n",
       "\t  2     & C     \\\\\n",
       "\t NA     & Java  \\\\\n",
       "\t  4     & GO    \\\\\n",
       "\t  5     & NA    \\\\\n",
       "\t  6     & SQL   \\\\\n",
       "\t  7     & PHP   \\\\\n",
       "\\end{tabular}\n"
      ],
      "text/markdown": [
       "\n",
       "popularity | grammer | \n",
       "|---|---|---|---|---|---|---|\n",
       "|  1     | Python | \n",
       "|  2     | C      | \n",
       "| NA     | Java   | \n",
       "|  4     | GO     | \n",
       "|  5     | NA     | \n",
       "|  6     | SQL    | \n",
       "|  7     | PHP    | \n",
       "\n",
       "\n"
      ],
      "text/plain": [
       "  popularity grammer\n",
       "1  1         Python \n",
       "2  2         C      \n",
       "3 NA         Java   \n",
       "4  4         GO     \n",
       "5  5         NA     \n",
       "6  6         SQL    \n",
       "7  7         PHP    "
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "df[-dim(df)[1],]"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "### 18.数据修改\n",
    "添加一行数据['Perl',6.6]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 27,
   "metadata": {
    "collapsed": true,
    "deletable": true,
    "editable": true
   },
   "outputs": [],
   "source": [
    "row <- data.frame(\n",
    "  \"grammer\" = c(\"Perl\"),\n",
    "  \"popularity\" = c(6.6)\n",
    ") # 需要和列的位置对应\n",
    "df <- rbind(df,row)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "### 19.数据排序\n",
    "对数据按照\"popularity\"列值的大小进行排序"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 29,
   "metadata": {
    "collapsed": true,
    "deletable": true,
    "editable": true
   },
   "outputs": [],
   "source": [
    "df <- df %>%\n",
    "  arrange(popularity)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "### 20.数据统计\n",
    "统计grammer列每个字符串的长度"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 31,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Loading required package: lattice\n"
     ]
    },
    {
     "ename": "ERROR",
     "evalue": "Error: package ‘survival’ 2.39.4 was found, but >= 2.40.1 is required by ‘Hmisc’\n",
     "output_type": "error",
     "traceback": [
      "Error: package ‘survival’ 2.39.4 was found, but >= 2.40.1 is required by ‘Hmisc’\nTraceback:\n",
      "1. library(Hmisc)",
      "2. .getRequiredPackages2(pkgInfo, quietly = quietly)",
      "3. stop(gettextf(msg, sQuote(pkg), current, dep$op, target, sQuote(pkgname)), \n .     call. = FALSE, domain = NA)"
     ]
    }
   ],
   "source": [
    "# 由于在线平台的survival包无法升级，请下载至本地并升级即可正常执行，代码已经通过测试！\n",
    "library(Hmisc)\n",
    "library(stringr)\n",
    "df$grammer <- impute(df$grammer,'R')\n",
    "str_length(df$grammer)\n",
    "\n",
    "df$len_str <- str_length(df$grammer)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "collapsed": true,
    "deletable": true,
    "editable": true
   },
   "source": [
    "### 第二期｜基本数据处理：21-50"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 21.数据读取\n",
    "读取本地Excel数据"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 25,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Parsed with column specification:\n",
      "cols(\n",
      "  `﻿createTime` = col_character(),\n",
      "  education = col_character(),\n",
      "  salary = col_character()\n",
      ")\n"
     ]
    }
   ],
   "source": [
    "library(readr)\n",
    "df <- read_csv('pandas120.csv')"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "collapsed": true,
    "deletable": true,
    "editable": true
   },
   "source": [
    "### 22.数据查看\n",
    "查看df数据前5行"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<table>\n",
       "<thead><tr><th scope=col>﻿createTime</th><th scope=col>education</th><th scope=col>salary</th></tr></thead>\n",
       "<tbody>\n",
       "\t<tr><td>2020/3/16 11:30</td><td>本科           </td><td>20k-35k        </td></tr>\n",
       "\t<tr><td>2020/3/16 10:58</td><td>本科           </td><td>20k-40k        </td></tr>\n",
       "\t<tr><td>2020/3/16 10:46</td><td>不限           </td><td>20k-35k        </td></tr>\n",
       "\t<tr><td>2020/3/16 10:45</td><td>本科           </td><td>13k-20k        </td></tr>\n",
       "\t<tr><td>2020/3/16 10:20</td><td>本科           </td><td>10k-20k        </td></tr>\n",
       "</tbody>\n",
       "</table>\n"
      ],
      "text/latex": [
       "\\begin{tabular}{r|lll}\n",
       " ﻿createTime & education & salary\\\\\n",
       "\\hline\n",
       "\t 2020/3/16 11:30 & 本科            & 20k-35k        \\\\\n",
       "\t 2020/3/16 10:58 & 本科            & 20k-40k        \\\\\n",
       "\t 2020/3/16 10:46 & 不限            & 20k-35k        \\\\\n",
       "\t 2020/3/16 10:45 & 本科            & 13k-20k        \\\\\n",
       "\t 2020/3/16 10:20 & 本科            & 10k-20k        \\\\\n",
       "\\end{tabular}\n"
      ],
      "text/markdown": [
       "\n",
       "﻿createTime | education | salary | \n",
       "|---|---|---|---|---|\n",
       "| 2020/3/16 11:30 | 本科            | 20k-35k         | \n",
       "| 2020/3/16 10:58 | 本科            | 20k-40k         | \n",
       "| 2020/3/16 10:46 | 不限            | 20k-35k         | \n",
       "| 2020/3/16 10:45 | 本科            | 13k-20k         | \n",
       "| 2020/3/16 10:20 | 本科            | 10k-20k         | \n",
       "\n",
       "\n"
      ],
      "text/plain": [
       "  ﻿createTime      education salary \n",
       "1 2020/3/16 11:30 本科      20k-35k\n",
       "2 2020/3/16 10:58 本科      20k-40k\n",
       "3 2020/3/16 10:46 不限      20k-35k\n",
       "4 2020/3/16 10:45 本科      13k-20k\n",
       "5 2020/3/16 10:20 本科      10k-20k"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# 默认是6行，可指定行数\n",
    "head(df,5)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "collapsed": true,
    "deletable": true,
    "editable": true
   },
   "source": [
    "### 23.将salary列数据转换为最大值与最小值的平均值"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 26,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<table>\n",
       "<thead><tr><th scope=col>﻿createTime</th><th scope=col>education</th><th scope=col>salary</th></tr></thead>\n",
       "<tbody>\n",
       "\t<tr><td>2020/3/16 11:30</td><td>本科           </td><td>27500          </td></tr>\n",
       "\t<tr><td>2020/3/16 10:58</td><td>本科           </td><td>30000          </td></tr>\n",
       "\t<tr><td>2020/3/16 10:46</td><td>不限           </td><td>27500          </td></tr>\n",
       "\t<tr><td>2020/3/16 10:45</td><td>本科           </td><td>16500          </td></tr>\n",
       "\t<tr><td>2020/3/16 10:20</td><td>本科           </td><td>15000          </td></tr>\n",
       "\t<tr><td>2020/3/16 10:33</td><td>本科           </td><td>14000          </td></tr>\n",
       "\t<tr><td>2020/3/16 10:11</td><td>硕士           </td><td>23000          </td></tr>\n",
       "\t<tr><td>2020/3/16 09:49</td><td>本科           </td><td>12500          </td></tr>\n",
       "\t<tr><td>2020/3/16 09:25</td><td>不限           </td><td> 7000          </td></tr>\n",
       "\t<tr><td>2020/3/16 09:35</td><td>本科           </td><td>16000          </td></tr>\n",
       "\t<tr><td>2020/3/16 10:34</td><td>本科           </td><td>20000          </td></tr>\n",
       "\t<tr><td>2020/3/16 09:30</td><td>本科           </td><td>10000          </td></tr>\n",
       "\t<tr><td>2020/3/16 11:30</td><td>本科           </td><td>30000          </td></tr>\n",
       "\t<tr><td>2020/3/16 10:54</td><td>本科           </td><td>25000          </td></tr>\n",
       "\t<tr><td>2020/3/15 12:14</td><td>本科           </td><td>30000          </td></tr>\n",
       "\t<tr><td>2020/3/16 10:52</td><td>硕士           </td><td>12500          </td></tr>\n",
       "\t<tr><td>2020/3/16 10:36</td><td>本科           </td><td>37500          </td></tr>\n",
       "\t<tr><td>2020/3/16 11:01</td><td>本科           </td><td>12500          </td></tr>\n",
       "\t<tr><td>2020/3/16 11:01</td><td>本科           </td><td>35000          </td></tr>\n",
       "\t<tr><td>2020/3/16 11:03</td><td>本科           </td><td>20000          </td></tr>\n",
       "\t<tr><td>2020/3/16 11:00</td><td>本科           </td><td>11500          </td></tr>\n",
       "\t<tr><td>2020/3/16 11:04</td><td>本科           </td><td>30000          </td></tr>\n",
       "\t<tr><td>2020/3/16 11:30</td><td>本科           </td><td>20000          </td></tr>\n",
       "\t<tr><td>2020/3/16 11:02</td><td>本科           </td><td>22500          </td></tr>\n",
       "\t<tr><td>2020/3/16 11:01</td><td>本科           </td><td>17500          </td></tr>\n",
       "\t<tr><td>2020/3/16 11:19</td><td>本科           </td><td>15000          </td></tr>\n",
       "\t<tr><td>2020/3/16 11:04</td><td>本科           </td><td>30000          </td></tr>\n",
       "\t<tr><td>2020/3/16 11:04</td><td>本科           </td><td>30000          </td></tr>\n",
       "\t<tr><td>2020/3/16 11:30</td><td>本科           </td><td>20000          </td></tr>\n",
       "\t<tr><td>2020/3/16 10:27</td><td>本科           </td><td>17500          </td></tr>\n",
       "\t<tr><td>...</td><td>...</td><td>...</td></tr>\n",
       "\t<tr><td>2020/3/16 11:01</td><td>本科           </td><td>21500          </td></tr>\n",
       "\t<tr><td>2020/3/16 10:21</td><td>大专           </td><td>15000          </td></tr>\n",
       "\t<tr><td>2020/3/16 10:59</td><td>本科           </td><td>16000          </td></tr>\n",
       "\t<tr><td>2020/3/16 11:13</td><td>本科           </td><td>12500          </td></tr>\n",
       "\t<tr><td>2020/3/16 10:26</td><td>大专           </td><td> 5000          </td></tr>\n",
       "\t<tr><td>2020/3/16 11:12</td><td>本科           </td><td> 4000          </td></tr>\n",
       "\t<tr><td>2020/3/16 10:52</td><td>本科           </td><td>16000          </td></tr>\n",
       "\t<tr><td>2020/3/16 11:13</td><td>本科           </td><td>26500          </td></tr>\n",
       "\t<tr><td>2020/3/16 10:48</td><td>本科           </td><td> 3500          </td></tr>\n",
       "\t<tr><td>2020/3/16 10:43</td><td>本科           </td><td>14000          </td></tr>\n",
       "\t<tr><td>2020/3/16 11:32</td><td>本科           </td><td> 8500          </td></tr>\n",
       "\t<tr><td>2020/3/16 11:30</td><td>本科           </td><td>20000          </td></tr>\n",
       "\t<tr><td>2020/3/16 11:19</td><td>本科           </td><td>30000          </td></tr>\n",
       "\t<tr><td>2020/3/16 11:19</td><td>本科           </td><td>30000          </td></tr>\n",
       "\t<tr><td>2020/3/16 09:28</td><td>本科           </td><td>18500          </td></tr>\n",
       "\t<tr><td>2020/3/16 10:09</td><td>本科           </td><td>11500          </td></tr>\n",
       "\t<tr><td>2020/3/16 11:33</td><td>本科           </td><td> 5000          </td></tr>\n",
       "\t<tr><td>2020/3/16 11:21</td><td>本科           </td><td>16000          </td></tr>\n",
       "\t<tr><td>2020/3/16 11:20</td><td>本科           </td><td> 4500          </td></tr>\n",
       "\t<tr><td>2020/3/16 10:00</td><td>本科           </td><td>20000          </td></tr>\n",
       "\t<tr><td>2020/3/16 11:13</td><td>本科           </td><td>12500          </td></tr>\n",
       "\t<tr><td>2020/3/16 11:12</td><td>本科           </td><td> 4000          </td></tr>\n",
       "\t<tr><td>2020/3/16 09:44</td><td>硕士           </td><td>12500          </td></tr>\n",
       "\t<tr><td>2020/3/16 10:57</td><td>本科           </td><td>22500          </td></tr>\n",
       "\t<tr><td>2020/3/16 09:46</td><td>本科           </td><td>20000          </td></tr>\n",
       "\t<tr><td>2020/3/16 11:36</td><td>本科           </td><td>14000          </td></tr>\n",
       "\t<tr><td>2020/3/16 09:54</td><td>硕士           </td><td>37500          </td></tr>\n",
       "\t<tr><td>2020/3/16 10:48</td><td>本科           </td><td>30000          </td></tr>\n",
       "\t<tr><td>2020/3/16 10:46</td><td>本科           </td><td>19000          </td></tr>\n",
       "\t<tr><td>2020/3/16 11:19</td><td>本科           </td><td>30000          </td></tr>\n",
       "</tbody>\n",
       "</table>\n"
      ],
      "text/latex": [
       "\\begin{tabular}{r|lll}\n",
       " ﻿createTime & education & salary\\\\\n",
       "\\hline\n",
       "\t 2020/3/16 11:30 & 本科            & 27500          \\\\\n",
       "\t 2020/3/16 10:58 & 本科            & 30000          \\\\\n",
       "\t 2020/3/16 10:46 & 不限            & 27500          \\\\\n",
       "\t 2020/3/16 10:45 & 本科            & 16500          \\\\\n",
       "\t 2020/3/16 10:20 & 本科            & 15000          \\\\\n",
       "\t 2020/3/16 10:33 & 本科            & 14000          \\\\\n",
       "\t 2020/3/16 10:11 & 硕士            & 23000          \\\\\n",
       "\t 2020/3/16 09:49 & 本科            & 12500          \\\\\n",
       "\t 2020/3/16 09:25 & 不限            &  7000          \\\\\n",
       "\t 2020/3/16 09:35 & 本科            & 16000          \\\\\n",
       "\t 2020/3/16 10:34 & 本科            & 20000          \\\\\n",
       "\t 2020/3/16 09:30 & 本科            & 10000          \\\\\n",
       "\t 2020/3/16 11:30 & 本科            & 30000          \\\\\n",
       "\t 2020/3/16 10:54 & 本科            & 25000          \\\\\n",
       "\t 2020/3/15 12:14 & 本科            & 30000          \\\\\n",
       "\t 2020/3/16 10:52 & 硕士            & 12500          \\\\\n",
       "\t 2020/3/16 10:36 & 本科            & 37500          \\\\\n",
       "\t 2020/3/16 11:01 & 本科            & 12500          \\\\\n",
       "\t 2020/3/16 11:01 & 本科            & 35000          \\\\\n",
       "\t 2020/3/16 11:03 & 本科            & 20000          \\\\\n",
       "\t 2020/3/16 11:00 & 本科            & 11500          \\\\\n",
       "\t 2020/3/16 11:04 & 本科            & 30000          \\\\\n",
       "\t 2020/3/16 11:30 & 本科            & 20000          \\\\\n",
       "\t 2020/3/16 11:02 & 本科            & 22500          \\\\\n",
       "\t 2020/3/16 11:01 & 本科            & 17500          \\\\\n",
       "\t 2020/3/16 11:19 & 本科            & 15000          \\\\\n",
       "\t 2020/3/16 11:04 & 本科            & 30000          \\\\\n",
       "\t 2020/3/16 11:04 & 本科            & 30000          \\\\\n",
       "\t 2020/3/16 11:30 & 本科            & 20000          \\\\\n",
       "\t 2020/3/16 10:27 & 本科            & 17500          \\\\\n",
       "\t ... & ... & ...\\\\\n",
       "\t 2020/3/16 11:01 & 本科            & 21500          \\\\\n",
       "\t 2020/3/16 10:21 & 大专            & 15000          \\\\\n",
       "\t 2020/3/16 10:59 & 本科            & 16000          \\\\\n",
       "\t 2020/3/16 11:13 & 本科            & 12500          \\\\\n",
       "\t 2020/3/16 10:26 & 大专            &  5000          \\\\\n",
       "\t 2020/3/16 11:12 & 本科            &  4000          \\\\\n",
       "\t 2020/3/16 10:52 & 本科            & 16000          \\\\\n",
       "\t 2020/3/16 11:13 & 本科            & 26500          \\\\\n",
       "\t 2020/3/16 10:48 & 本科            &  3500          \\\\\n",
       "\t 2020/3/16 10:43 & 本科            & 14000          \\\\\n",
       "\t 2020/3/16 11:32 & 本科            &  8500          \\\\\n",
       "\t 2020/3/16 11:30 & 本科            & 20000          \\\\\n",
       "\t 2020/3/16 11:19 & 本科            & 30000          \\\\\n",
       "\t 2020/3/16 11:19 & 本科            & 30000          \\\\\n",
       "\t 2020/3/16 09:28 & 本科            & 18500          \\\\\n",
       "\t 2020/3/16 10:09 & 本科            & 11500          \\\\\n",
       "\t 2020/3/16 11:33 & 本科            &  5000          \\\\\n",
       "\t 2020/3/16 11:21 & 本科            & 16000          \\\\\n",
       "\t 2020/3/16 11:20 & 本科            &  4500          \\\\\n",
       "\t 2020/3/16 10:00 & 本科            & 20000          \\\\\n",
       "\t 2020/3/16 11:13 & 本科            & 12500          \\\\\n",
       "\t 2020/3/16 11:12 & 本科            &  4000          \\\\\n",
       "\t 2020/3/16 09:44 & 硕士            & 12500          \\\\\n",
       "\t 2020/3/16 10:57 & 本科            & 22500          \\\\\n",
       "\t 2020/3/16 09:46 & 本科            & 20000          \\\\\n",
       "\t 2020/3/16 11:36 & 本科            & 14000          \\\\\n",
       "\t 2020/3/16 09:54 & 硕士            & 37500          \\\\\n",
       "\t 2020/3/16 10:48 & 本科            & 30000          \\\\\n",
       "\t 2020/3/16 10:46 & 本科            & 19000          \\\\\n",
       "\t 2020/3/16 11:19 & 本科            & 30000          \\\\\n",
       "\\end{tabular}\n"
      ],
      "text/markdown": [
       "\n",
       "﻿createTime | education | salary | \n",
       "|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|\n",
       "| 2020/3/16 11:30 | 本科            | 27500           | \n",
       "| 2020/3/16 10:58 | 本科            | 30000           | \n",
       "| 2020/3/16 10:46 | 不限            | 27500           | \n",
       "| 2020/3/16 10:45 | 本科            | 16500           | \n",
       "| 2020/3/16 10:20 | 本科            | 15000           | \n",
       "| 2020/3/16 10:33 | 本科            | 14000           | \n",
       "| 2020/3/16 10:11 | 硕士            | 23000           | \n",
       "| 2020/3/16 09:49 | 本科            | 12500           | \n",
       "| 2020/3/16 09:25 | 不限            |  7000           | \n",
       "| 2020/3/16 09:35 | 本科            | 16000           | \n",
       "| 2020/3/16 10:34 | 本科            | 20000           | \n",
       "| 2020/3/16 09:30 | 本科            | 10000           | \n",
       "| 2020/3/16 11:30 | 本科            | 30000           | \n",
       "| 2020/3/16 10:54 | 本科            | 25000           | \n",
       "| 2020/3/15 12:14 | 本科            | 30000           | \n",
       "| 2020/3/16 10:52 | 硕士            | 12500           | \n",
       "| 2020/3/16 10:36 | 本科            | 37500           | \n",
       "| 2020/3/16 11:01 | 本科            | 12500           | \n",
       "| 2020/3/16 11:01 | 本科            | 35000           | \n",
       "| 2020/3/16 11:03 | 本科            | 20000           | \n",
       "| 2020/3/16 11:00 | 本科            | 11500           | \n",
       "| 2020/3/16 11:04 | 本科            | 30000           | \n",
       "| 2020/3/16 11:30 | 本科            | 20000           | \n",
       "| 2020/3/16 11:02 | 本科            | 22500           | \n",
       "| 2020/3/16 11:01 | 本科            | 17500           | \n",
       "| 2020/3/16 11:19 | 本科            | 15000           | \n",
       "| 2020/3/16 11:04 | 本科            | 30000           | \n",
       "| 2020/3/16 11:04 | 本科            | 30000           | \n",
       "| 2020/3/16 11:30 | 本科            | 20000           | \n",
       "| 2020/3/16 10:27 | 本科            | 17500           | \n",
       "| ... | ... | ... | \n",
       "| 2020/3/16 11:01 | 本科            | 21500           | \n",
       "| 2020/3/16 10:21 | 大专            | 15000           | \n",
       "| 2020/3/16 10:59 | 本科            | 16000           | \n",
       "| 2020/3/16 11:13 | 本科            | 12500           | \n",
       "| 2020/3/16 10:26 | 大专            |  5000           | \n",
       "| 2020/3/16 11:12 | 本科            |  4000           | \n",
       "| 2020/3/16 10:52 | 本科            | 16000           | \n",
       "| 2020/3/16 11:13 | 本科            | 26500           | \n",
       "| 2020/3/16 10:48 | 本科            |  3500           | \n",
       "| 2020/3/16 10:43 | 本科            | 14000           | \n",
       "| 2020/3/16 11:32 | 本科            |  8500           | \n",
       "| 2020/3/16 11:30 | 本科            | 20000           | \n",
       "| 2020/3/16 11:19 | 本科            | 30000           | \n",
       "| 2020/3/16 11:19 | 本科            | 30000           | \n",
       "| 2020/3/16 09:28 | 本科            | 18500           | \n",
       "| 2020/3/16 10:09 | 本科            | 11500           | \n",
       "| 2020/3/16 11:33 | 本科            |  5000           | \n",
       "| 2020/3/16 11:21 | 本科            | 16000           | \n",
       "| 2020/3/16 11:20 | 本科            |  4500           | \n",
       "| 2020/3/16 10:00 | 本科            | 20000           | \n",
       "| 2020/3/16 11:13 | 本科            | 12500           | \n",
       "| 2020/3/16 11:12 | 本科            |  4000           | \n",
       "| 2020/3/16 09:44 | 硕士            | 12500           | \n",
       "| 2020/3/16 10:57 | 本科            | 22500           | \n",
       "| 2020/3/16 09:46 | 本科            | 20000           | \n",
       "| 2020/3/16 11:36 | 本科            | 14000           | \n",
       "| 2020/3/16 09:54 | 硕士            | 37500           | \n",
       "| 2020/3/16 10:48 | 本科            | 30000           | \n",
       "| 2020/3/16 10:46 | 本科            | 19000           | \n",
       "| 2020/3/16 11:19 | 本科            | 30000           | \n",
       "\n",
       "\n"
      ],
      "text/plain": [
       "    ﻿createTime      education salary\n",
       "1   2020/3/16 11:30 本科      27500 \n",
       "2   2020/3/16 10:58 本科      30000 \n",
       "3   2020/3/16 10:46 不限      27500 \n",
       "4   2020/3/16 10:45 本科      16500 \n",
       "5   2020/3/16 10:20 本科      15000 \n",
       "6   2020/3/16 10:33 本科      14000 \n",
       "7   2020/3/16 10:11 硕士      23000 \n",
       "8   2020/3/16 09:49 本科      12500 \n",
       "9   2020/3/16 09:25 不限       7000 \n",
       "10  2020/3/16 09:35 本科      16000 \n",
       "11  2020/3/16 10:34 本科      20000 \n",
       "12  2020/3/16 09:30 本科      10000 \n",
       "13  2020/3/16 11:30 本科      30000 \n",
       "14  2020/3/16 10:54 本科      25000 \n",
       "15  2020/3/15 12:14 本科      30000 \n",
       "16  2020/3/16 10:52 硕士      12500 \n",
       "17  2020/3/16 10:36 本科      37500 \n",
       "18  2020/3/16 11:01 本科      12500 \n",
       "19  2020/3/16 11:01 本科      35000 \n",
       "20  2020/3/16 11:03 本科      20000 \n",
       "21  2020/3/16 11:00 本科      11500 \n",
       "22  2020/3/16 11:04 本科      30000 \n",
       "23  2020/3/16 11:30 本科      20000 \n",
       "24  2020/3/16 11:02 本科      22500 \n",
       "25  2020/3/16 11:01 本科      17500 \n",
       "26  2020/3/16 11:19 本科      15000 \n",
       "27  2020/3/16 11:04 本科      30000 \n",
       "28  2020/3/16 11:04 本科      30000 \n",
       "29  2020/3/16 11:30 本科      20000 \n",
       "30  2020/3/16 10:27 本科      17500 \n",
       "... ...             ...       ...   \n",
       "106 2020/3/16 11:01 本科      21500 \n",
       "107 2020/3/16 10:21 大专      15000 \n",
       "108 2020/3/16 10:59 本科      16000 \n",
       "109 2020/3/16 11:13 本科      12500 \n",
       "110 2020/3/16 10:26 大专       5000 \n",
       "111 2020/3/16 11:12 本科       4000 \n",
       "112 2020/3/16 10:52 本科      16000 \n",
       "113 2020/3/16 11:13 本科      26500 \n",
       "114 2020/3/16 10:48 本科       3500 \n",
       "115 2020/3/16 10:43 本科      14000 \n",
       "116 2020/3/16 11:32 本科       8500 \n",
       "117 2020/3/16 11:30 本科      20000 \n",
       "118 2020/3/16 11:19 本科      30000 \n",
       "119 2020/3/16 11:19 本科      30000 \n",
       "120 2020/3/16 09:28 本科      18500 \n",
       "121 2020/3/16 10:09 本科      11500 \n",
       "122 2020/3/16 11:33 本科       5000 \n",
       "123 2020/3/16 11:21 本科      16000 \n",
       "124 2020/3/16 11:20 本科       4500 \n",
       "125 2020/3/16 10:00 本科      20000 \n",
       "126 2020/3/16 11:13 本科      12500 \n",
       "127 2020/3/16 11:12 本科       4000 \n",
       "128 2020/3/16 09:44 硕士      12500 \n",
       "129 2020/3/16 10:57 本科      22500 \n",
       "130 2020/3/16 09:46 本科      20000 \n",
       "131 2020/3/16 11:36 本科      14000 \n",
       "132 2020/3/16 09:54 硕士      37500 \n",
       "133 2020/3/16 10:48 本科      30000 \n",
       "134 2020/3/16 10:46 本科      19000 \n",
       "135 2020/3/16 11:19 本科      30000 "
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "library(stringr)\n",
    "df$salary <- df$salary %>%\n",
    "  str_replace_all('k','') %>%\n",
    "  str_split('-',simplify = T) %>%\n",
    "  apply(2,as.numeric) %>%\n",
    "  rowMeans() * 1000\n",
    "df"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "collapsed": true,
    "deletable": true,
    "editable": true
   },
   "source": [
    "### 24.将数据根据学历进行分组并计算平均薪资"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\n",
      "Attaching package: ‘dplyr’\n",
      "\n",
      "The following objects are masked from ‘package:stats’:\n",
      "\n",
      "    filter, lag\n",
      "\n",
      "The following objects are masked from ‘package:base’:\n",
      "\n",
      "    intersect, setdiff, setequal, union\n",
      "\n"
     ]
    },
    {
     "data": {
      "text/html": [
       "<table>\n",
       "<thead><tr><th scope=col>education</th><th scope=col>mean</th></tr></thead>\n",
       "<tbody>\n",
       "\t<tr><td>不限    </td><td>19600.00</td></tr>\n",
       "\t<tr><td>大专    </td><td>10000.00</td></tr>\n",
       "\t<tr><td>本科    </td><td>19361.34</td></tr>\n",
       "\t<tr><td>硕士    </td><td>20642.86</td></tr>\n",
       "</tbody>\n",
       "</table>\n"
      ],
      "text/latex": [
       "\\begin{tabular}{r|ll}\n",
       " education & mean\\\\\n",
       "\\hline\n",
       "\t 不限     & 19600.00\\\\\n",
       "\t 大专     & 10000.00\\\\\n",
       "\t 本科     & 19361.34\\\\\n",
       "\t 硕士     & 20642.86\\\\\n",
       "\\end{tabular}\n"
      ],
      "text/markdown": [
       "\n",
       "education | mean | \n",
       "|---|---|---|---|\n",
       "| 不限     | 19600.00 | \n",
       "| 大专     | 10000.00 | \n",
       "| 本科     | 19361.34 | \n",
       "| 硕士     | 20642.86 | \n",
       "\n",
       "\n"
      ],
      "text/plain": [
       "  education mean    \n",
       "1 不限      19600.00\n",
       "2 大专      10000.00\n",
       "3 本科      19361.34\n",
       "4 硕士      20642.86"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "library(dplyr)\n",
    "library(tibble)\n",
    "df %>%\n",
    "  group_by(education) %>%\n",
    "  summarise(mean = mean(salary))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 25.将createTime列时间转换为月-日"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "#转化后该列属性是 字符串，R中对时间格式要求严格\n",
    "df$createTime <- as.Date(df$createTime) %>%\n",
    "  str_replace('2020-','')"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 26.查看索引、数据类型和内存信息"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Classes ‘tbl_df’, ‘tbl’ and 'data.frame':\t135 obs. of  3 variables:\n",
      " $ ﻿createTime: chr  \"2020/3/16 11:30\" \"2020/3/16 10:58\" \"2020/3/16 10:46\" \"2020/3/16 10:45\" ...\n",
      " $ education : chr  \"本科\" \"本科\" \"不限\" \"本科\" ...\n",
      " $ salary    : num  27500 30000 27500 16500 15000 14000 23000 12500 7000 16000 ...\n",
      " - attr(*, \"spec\")=List of 2\n",
      "  ..$ cols   :List of 3\n",
      "  .. ..$ ﻿createTime: list()\n",
      "  .. .. ..- attr(*, \"class\")= chr  \"collector_character\" \"collector\"\n",
      "  .. ..$ education : list()\n",
      "  .. .. ..- attr(*, \"class\")= chr  \"collector_character\" \"collector\"\n",
      "  .. ..$ salary    : list()\n",
      "  .. .. ..- attr(*, \"class\")= chr  \"collector_character\" \"collector\"\n",
      "  ..$ default: list()\n",
      "  .. ..- attr(*, \"class\")= chr  \"collector_guess\" \"collector\"\n",
      "  ..- attr(*, \"class\")= chr \"col_spec\"\n"
     ]
    },
    {
     "data": {
      "text/plain": [
       "9.24 kB"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "str(df)\n",
    "\n",
    "# 内存查看需要用到其他的库\n",
    "library(pryr)\n",
    "object_size(df)\n",
    "# 6.66 kB"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 27查看数值型列的汇总统计"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 22,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "  ﻿createTime         education             salary     \n",
       " Length:135         Length:135         Min.   : 3500  \n",
       " Class :character   Class :character   1st Qu.:14000  \n",
       " Mode  :character   Mode  :character   Median :17500  \n",
       "                                       Mean   :19159  \n",
       "                                       3rd Qu.:25000  \n",
       "                                       Max.   :45000  "
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "summary(df)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 28.新增一列根据salary将数据分为三组"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 28,
   "metadata": {
    "collapsed": false
   },
   "outputs": [],
   "source": [
    "#用ifelse也可以\n",
    "#底层原理有差别但实现结果一样\n",
    "df <- df %>%\n",
    "  mutate(categories = case_when(\n",
    "    df$salary >= 0 & df$salary < 5000 ~ '低',\n",
    "    df$salary >= 5000 & df$salary < 20000 ~ '低',\n",
    "    TRUE ~ '高'\n",
    "  ))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 29.按照salary列对数据降序排列"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 30,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<table>\n",
       "<thead><tr><th scope=col>﻿createTime</th><th scope=col>education</th><th scope=col>salary</th><th scope=col>categories</th></tr></thead>\n",
       "<tbody>\n",
       "\t<tr><td>2020/3/16 11:30</td><td>本科           </td><td>45000          </td><td>高             </td></tr>\n",
       "\t<tr><td>2020/3/16 11:04</td><td>本科           </td><td>40000          </td><td>高             </td></tr>\n",
       "\t<tr><td>2020/3/16 10:36</td><td>本科           </td><td>37500          </td><td>高             </td></tr>\n",
       "\t<tr><td>2020/3/16 11:01</td><td>本科           </td><td>37500          </td><td>高             </td></tr>\n",
       "\t<tr><td>2020/3/16 09:54</td><td>硕士           </td><td>37500          </td><td>高             </td></tr>\n",
       "\t<tr><td>2020/3/16 11:01</td><td>本科           </td><td>35000          </td><td>高             </td></tr>\n",
       "\t<tr><td>2020/3/16 10:41</td><td>本科           </td><td>35000          </td><td>高             </td></tr>\n",
       "\t<tr><td>2020/3/16 10:41</td><td>本科           </td><td>35000          </td><td>高             </td></tr>\n",
       "\t<tr><td>2020/3/16 11:30</td><td>本科           </td><td>32500          </td><td>高             </td></tr>\n",
       "\t<tr><td>2020/3/16 10:58</td><td>本科           </td><td>30000          </td><td>高             </td></tr>\n",
       "\t<tr><td>2020/3/16 11:30</td><td>本科           </td><td>30000          </td><td>高             </td></tr>\n",
       "\t<tr><td>2020/3/15 12:14</td><td>本科           </td><td>30000          </td><td>高             </td></tr>\n",
       "\t<tr><td>2020/3/16 11:04</td><td>本科           </td><td>30000          </td><td>高             </td></tr>\n",
       "\t<tr><td>2020/3/16 11:04</td><td>本科           </td><td>30000          </td><td>高             </td></tr>\n",
       "\t<tr><td>2020/3/16 11:04</td><td>本科           </td><td>30000          </td><td>高             </td></tr>\n",
       "\t<tr><td>2020/3/16 11:04</td><td>本科           </td><td>30000          </td><td>高             </td></tr>\n",
       "\t<tr><td>2020/3/16 11:01</td><td>不限           </td><td>30000          </td><td>高             </td></tr>\n",
       "\t<tr><td>2020/3/16 11:35</td><td>本科           </td><td>30000          </td><td>高             </td></tr>\n",
       "\t<tr><td>2020/3/16 11:30</td><td>本科           </td><td>30000          </td><td>高             </td></tr>\n",
       "\t<tr><td>2020/3/16 11:16</td><td>本科           </td><td>30000          </td><td>高             </td></tr>\n",
       "\t<tr><td>2020/3/16 11:01</td><td>不限           </td><td>30000          </td><td>高             </td></tr>\n",
       "\t<tr><td>2020/3/16 10:43</td><td>本科           </td><td>30000          </td><td>高             </td></tr>\n",
       "\t<tr><td>2020/3/16 10:44</td><td>本科           </td><td>30000          </td><td>高             </td></tr>\n",
       "\t<tr><td>2020/3/16 10:27</td><td>本科           </td><td>30000          </td><td>高             </td></tr>\n",
       "\t<tr><td>2020/3/16 11:19</td><td>本科           </td><td>30000          </td><td>高             </td></tr>\n",
       "\t<tr><td>2020/3/16 11:19</td><td>本科           </td><td>30000          </td><td>高             </td></tr>\n",
       "\t<tr><td>2020/3/16 10:48</td><td>本科           </td><td>30000          </td><td>高             </td></tr>\n",
       "\t<tr><td>2020/3/16 11:19</td><td>本科           </td><td>30000          </td><td>高             </td></tr>\n",
       "\t<tr><td>2020/3/16 11:30</td><td>本科           </td><td>27500          </td><td>高             </td></tr>\n",
       "\t<tr><td>2020/3/16 10:46</td><td>不限           </td><td>27500          </td><td>高             </td></tr>\n",
       "\t<tr><td>...</td><td>...</td><td>...</td><td>...</td></tr>\n",
       "\t<tr><td>2020/3/16 10:52</td><td>硕士           </td><td>12500          </td><td>低             </td></tr>\n",
       "\t<tr><td>2020/3/16 11:01</td><td>本科           </td><td>12500          </td><td>低             </td></tr>\n",
       "\t<tr><td>2020/3/16 11:18</td><td>本科           </td><td>12500          </td><td>低             </td></tr>\n",
       "\t<tr><td>2020/3/16 11:35</td><td>本科           </td><td>12500          </td><td>低             </td></tr>\n",
       "\t<tr><td>2020/3/16 11:13</td><td>本科           </td><td>12500          </td><td>低             </td></tr>\n",
       "\t<tr><td>2020/3/16 11:13</td><td>本科           </td><td>12500          </td><td>低             </td></tr>\n",
       "\t<tr><td>2020/3/16 09:44</td><td>硕士           </td><td>12500          </td><td>低             </td></tr>\n",
       "\t<tr><td>2020/3/16 10:59</td><td>本科           </td><td>12000          </td><td>低             </td></tr>\n",
       "\t<tr><td>2020/3/16 10:59</td><td>本科           </td><td>12000          </td><td>低             </td></tr>\n",
       "\t<tr><td>2020/3/16 10:18</td><td>本科           </td><td>12000          </td><td>低             </td></tr>\n",
       "\t<tr><td>2020/3/16 11:00</td><td>本科           </td><td>11500          </td><td>低             </td></tr>\n",
       "\t<tr><td>2020/3/16 11:35</td><td>本科           </td><td>11500          </td><td>低             </td></tr>\n",
       "\t<tr><td>2020/3/16 10:09</td><td>本科           </td><td>11500          </td><td>低             </td></tr>\n",
       "\t<tr><td>2020/3/16 10:45</td><td>本科           </td><td>11000          </td><td>低             </td></tr>\n",
       "\t<tr><td>2020/3/16 09:30</td><td>本科           </td><td>10000          </td><td>低             </td></tr>\n",
       "\t<tr><td>2020/3/16 10:51</td><td>本科           </td><td> 9500          </td><td>低             </td></tr>\n",
       "\t<tr><td>2020/3/16 10:51</td><td>本科           </td><td> 9500          </td><td>低             </td></tr>\n",
       "\t<tr><td>2020/3/16 11:32</td><td>本科           </td><td> 8500          </td><td>低             </td></tr>\n",
       "\t<tr><td>2020/3/16 09:25</td><td>不限           </td><td> 7000          </td><td>低             </td></tr>\n",
       "\t<tr><td>2020/3/16 11:20</td><td>本科           </td><td> 6500          </td><td>低             </td></tr>\n",
       "\t<tr><td>2020/3/16 11:20</td><td>本科           </td><td> 6500          </td><td>低             </td></tr>\n",
       "\t<tr><td>2020/3/16 10:50</td><td>本科           </td><td> 5000          </td><td>低             </td></tr>\n",
       "\t<tr><td>2020/3/16 10:26</td><td>大专           </td><td> 5000          </td><td>低             </td></tr>\n",
       "\t<tr><td>2020/3/16 10:26</td><td>大专           </td><td> 5000          </td><td>低             </td></tr>\n",
       "\t<tr><td>2020/3/16 11:33</td><td>本科           </td><td> 5000          </td><td>低             </td></tr>\n",
       "\t<tr><td>2020/3/16 11:20</td><td>本科           </td><td> 4500          </td><td>低             </td></tr>\n",
       "\t<tr><td>2020/3/16 11:12</td><td>本科           </td><td> 4000          </td><td>低             </td></tr>\n",
       "\t<tr><td>2020/3/16 11:12</td><td>本科           </td><td> 4000          </td><td>低             </td></tr>\n",
       "\t<tr><td>2020/3/16 10:44</td><td>不限           </td><td> 3500          </td><td>低             </td></tr>\n",
       "\t<tr><td>2020/3/16 10:48</td><td>本科           </td><td> 3500          </td><td>低             </td></tr>\n",
       "</tbody>\n",
       "</table>\n"
      ],
      "text/latex": [
       "\\begin{tabular}{r|llll}\n",
       " ﻿createTime & education & salary & categories\\\\\n",
       "\\hline\n",
       "\t 2020/3/16 11:30 & 本科            & 45000           & 高             \\\\\n",
       "\t 2020/3/16 11:04 & 本科            & 40000           & 高             \\\\\n",
       "\t 2020/3/16 10:36 & 本科            & 37500           & 高             \\\\\n",
       "\t 2020/3/16 11:01 & 本科            & 37500           & 高             \\\\\n",
       "\t 2020/3/16 09:54 & 硕士            & 37500           & 高             \\\\\n",
       "\t 2020/3/16 11:01 & 本科            & 35000           & 高             \\\\\n",
       "\t 2020/3/16 10:41 & 本科            & 35000           & 高             \\\\\n",
       "\t 2020/3/16 10:41 & 本科            & 35000           & 高             \\\\\n",
       "\t 2020/3/16 11:30 & 本科            & 32500           & 高             \\\\\n",
       "\t 2020/3/16 10:58 & 本科            & 30000           & 高             \\\\\n",
       "\t 2020/3/16 11:30 & 本科            & 30000           & 高             \\\\\n",
       "\t 2020/3/15 12:14 & 本科            & 30000           & 高             \\\\\n",
       "\t 2020/3/16 11:04 & 本科            & 30000           & 高             \\\\\n",
       "\t 2020/3/16 11:04 & 本科            & 30000           & 高             \\\\\n",
       "\t 2020/3/16 11:04 & 本科            & 30000           & 高             \\\\\n",
       "\t 2020/3/16 11:04 & 本科            & 30000           & 高             \\\\\n",
       "\t 2020/3/16 11:01 & 不限            & 30000           & 高             \\\\\n",
       "\t 2020/3/16 11:35 & 本科            & 30000           & 高             \\\\\n",
       "\t 2020/3/16 11:30 & 本科            & 30000           & 高             \\\\\n",
       "\t 2020/3/16 11:16 & 本科            & 30000           & 高             \\\\\n",
       "\t 2020/3/16 11:01 & 不限            & 30000           & 高             \\\\\n",
       "\t 2020/3/16 10:43 & 本科            & 30000           & 高             \\\\\n",
       "\t 2020/3/16 10:44 & 本科            & 30000           & 高             \\\\\n",
       "\t 2020/3/16 10:27 & 本科            & 30000           & 高             \\\\\n",
       "\t 2020/3/16 11:19 & 本科            & 30000           & 高             \\\\\n",
       "\t 2020/3/16 11:19 & 本科            & 30000           & 高             \\\\\n",
       "\t 2020/3/16 10:48 & 本科            & 30000           & 高             \\\\\n",
       "\t 2020/3/16 11:19 & 本科            & 30000           & 高             \\\\\n",
       "\t 2020/3/16 11:30 & 本科            & 27500           & 高             \\\\\n",
       "\t 2020/3/16 10:46 & 不限            & 27500           & 高             \\\\\n",
       "\t ... & ... & ... & ...\\\\\n",
       "\t 2020/3/16 10:52 & 硕士            & 12500           & 低             \\\\\n",
       "\t 2020/3/16 11:01 & 本科            & 12500           & 低             \\\\\n",
       "\t 2020/3/16 11:18 & 本科            & 12500           & 低             \\\\\n",
       "\t 2020/3/16 11:35 & 本科            & 12500           & 低             \\\\\n",
       "\t 2020/3/16 11:13 & 本科            & 12500           & 低             \\\\\n",
       "\t 2020/3/16 11:13 & 本科            & 12500           & 低             \\\\\n",
       "\t 2020/3/16 09:44 & 硕士            & 12500           & 低             \\\\\n",
       "\t 2020/3/16 10:59 & 本科            & 12000           & 低             \\\\\n",
       "\t 2020/3/16 10:59 & 本科            & 12000           & 低             \\\\\n",
       "\t 2020/3/16 10:18 & 本科            & 12000           & 低             \\\\\n",
       "\t 2020/3/16 11:00 & 本科            & 11500           & 低             \\\\\n",
       "\t 2020/3/16 11:35 & 本科            & 11500           & 低             \\\\\n",
       "\t 2020/3/16 10:09 & 本科            & 11500           & 低             \\\\\n",
       "\t 2020/3/16 10:45 & 本科            & 11000           & 低             \\\\\n",
       "\t 2020/3/16 09:30 & 本科            & 10000           & 低             \\\\\n",
       "\t 2020/3/16 10:51 & 本科            &  9500           & 低             \\\\\n",
       "\t 2020/3/16 10:51 & 本科            &  9500           & 低             \\\\\n",
       "\t 2020/3/16 11:32 & 本科            &  8500           & 低             \\\\\n",
       "\t 2020/3/16 09:25 & 不限            &  7000           & 低             \\\\\n",
       "\t 2020/3/16 11:20 & 本科            &  6500           & 低             \\\\\n",
       "\t 2020/3/16 11:20 & 本科            &  6500           & 低             \\\\\n",
       "\t 2020/3/16 10:50 & 本科            &  5000           & 低             \\\\\n",
       "\t 2020/3/16 10:26 & 大专            &  5000           & 低             \\\\\n",
       "\t 2020/3/16 10:26 & 大专            &  5000           & 低             \\\\\n",
       "\t 2020/3/16 11:33 & 本科            &  5000           & 低             \\\\\n",
       "\t 2020/3/16 11:20 & 本科            &  4500           & 低             \\\\\n",
       "\t 2020/3/16 11:12 & 本科            &  4000           & 低             \\\\\n",
       "\t 2020/3/16 11:12 & 本科            &  4000           & 低             \\\\\n",
       "\t 2020/3/16 10:44 & 不限            &  3500           & 低             \\\\\n",
       "\t 2020/3/16 10:48 & 本科            &  3500           & 低             \\\\\n",
       "\\end{tabular}\n"
      ],
      "text/markdown": [
       "\n",
       "﻿createTime | education | salary | categories | \n",
       "|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|\n",
       "| 2020/3/16 11:30 | 本科            | 45000           | 高              | \n",
       "| 2020/3/16 11:04 | 本科            | 40000           | 高              | \n",
       "| 2020/3/16 10:36 | 本科            | 37500           | 高              | \n",
       "| 2020/3/16 11:01 | 本科            | 37500           | 高              | \n",
       "| 2020/3/16 09:54 | 硕士            | 37500           | 高              | \n",
       "| 2020/3/16 11:01 | 本科            | 35000           | 高              | \n",
       "| 2020/3/16 10:41 | 本科            | 35000           | 高              | \n",
       "| 2020/3/16 10:41 | 本科            | 35000           | 高              | \n",
       "| 2020/3/16 11:30 | 本科            | 32500           | 高              | \n",
       "| 2020/3/16 10:58 | 本科            | 30000           | 高              | \n",
       "| 2020/3/16 11:30 | 本科            | 30000           | 高              | \n",
       "| 2020/3/15 12:14 | 本科            | 30000           | 高              | \n",
       "| 2020/3/16 11:04 | 本科            | 30000           | 高              | \n",
       "| 2020/3/16 11:04 | 本科            | 30000           | 高              | \n",
       "| 2020/3/16 11:04 | 本科            | 30000           | 高              | \n",
       "| 2020/3/16 11:04 | 本科            | 30000           | 高              | \n",
       "| 2020/3/16 11:01 | 不限            | 30000           | 高              | \n",
       "| 2020/3/16 11:35 | 本科            | 30000           | 高              | \n",
       "| 2020/3/16 11:30 | 本科            | 30000           | 高              | \n",
       "| 2020/3/16 11:16 | 本科            | 30000           | 高              | \n",
       "| 2020/3/16 11:01 | 不限            | 30000           | 高              | \n",
       "| 2020/3/16 10:43 | 本科            | 30000           | 高              | \n",
       "| 2020/3/16 10:44 | 本科            | 30000           | 高              | \n",
       "| 2020/3/16 10:27 | 本科            | 30000           | 高              | \n",
       "| 2020/3/16 11:19 | 本科            | 30000           | 高              | \n",
       "| 2020/3/16 11:19 | 本科            | 30000           | 高              | \n",
       "| 2020/3/16 10:48 | 本科            | 30000           | 高              | \n",
       "| 2020/3/16 11:19 | 本科            | 30000           | 高              | \n",
       "| 2020/3/16 11:30 | 本科            | 27500           | 高              | \n",
       "| 2020/3/16 10:46 | 不限            | 27500           | 高              | \n",
       "| ... | ... | ... | ... | \n",
       "| 2020/3/16 10:52 | 硕士            | 12500           | 低              | \n",
       "| 2020/3/16 11:01 | 本科            | 12500           | 低              | \n",
       "| 2020/3/16 11:18 | 本科            | 12500           | 低              | \n",
       "| 2020/3/16 11:35 | 本科            | 12500           | 低              | \n",
       "| 2020/3/16 11:13 | 本科            | 12500           | 低              | \n",
       "| 2020/3/16 11:13 | 本科            | 12500           | 低              | \n",
       "| 2020/3/16 09:44 | 硕士            | 12500           | 低              | \n",
       "| 2020/3/16 10:59 | 本科            | 12000           | 低              | \n",
       "| 2020/3/16 10:59 | 本科            | 12000           | 低              | \n",
       "| 2020/3/16 10:18 | 本科            | 12000           | 低              | \n",
       "| 2020/3/16 11:00 | 本科            | 11500           | 低              | \n",
       "| 2020/3/16 11:35 | 本科            | 11500           | 低              | \n",
       "| 2020/3/16 10:09 | 本科            | 11500           | 低              | \n",
       "| 2020/3/16 10:45 | 本科            | 11000           | 低              | \n",
       "| 2020/3/16 09:30 | 本科            | 10000           | 低              | \n",
       "| 2020/3/16 10:51 | 本科            |  9500           | 低              | \n",
       "| 2020/3/16 10:51 | 本科            |  9500           | 低              | \n",
       "| 2020/3/16 11:32 | 本科            |  8500           | 低              | \n",
       "| 2020/3/16 09:25 | 不限            |  7000           | 低              | \n",
       "| 2020/3/16 11:20 | 本科            |  6500           | 低              | \n",
       "| 2020/3/16 11:20 | 本科            |  6500           | 低              | \n",
       "| 2020/3/16 10:50 | 本科            |  5000           | 低              | \n",
       "| 2020/3/16 10:26 | 大专            |  5000           | 低              | \n",
       "| 2020/3/16 10:26 | 大专            |  5000           | 低              | \n",
       "| 2020/3/16 11:33 | 本科            |  5000           | 低              | \n",
       "| 2020/3/16 11:20 | 本科            |  4500           | 低              | \n",
       "| 2020/3/16 11:12 | 本科            |  4000           | 低              | \n",
       "| 2020/3/16 11:12 | 本科            |  4000           | 低              | \n",
       "| 2020/3/16 10:44 | 不限            |  3500           | 低              | \n",
       "| 2020/3/16 10:48 | 本科            |  3500           | 低              | \n",
       "\n",
       "\n"
      ],
      "text/plain": [
       "    ﻿createTime      education salary categories\n",
       "1   2020/3/16 11:30 本科      45000  高        \n",
       "2   2020/3/16 11:04 本科      40000  高        \n",
       "3   2020/3/16 10:36 本科      37500  高        \n",
       "4   2020/3/16 11:01 本科      37500  高        \n",
       "5   2020/3/16 09:54 硕士      37500  高        \n",
       "6   2020/3/16 11:01 本科      35000  高        \n",
       "7   2020/3/16 10:41 本科      35000  高        \n",
       "8   2020/3/16 10:41 本科      35000  高        \n",
       "9   2020/3/16 11:30 本科      32500  高        \n",
       "10  2020/3/16 10:58 本科      30000  高        \n",
       "11  2020/3/16 11:30 本科      30000  高        \n",
       "12  2020/3/15 12:14 本科      30000  高        \n",
       "13  2020/3/16 11:04 本科      30000  高        \n",
       "14  2020/3/16 11:04 本科      30000  高        \n",
       "15  2020/3/16 11:04 本科      30000  高        \n",
       "16  2020/3/16 11:04 本科      30000  高        \n",
       "17  2020/3/16 11:01 不限      30000  高        \n",
       "18  2020/3/16 11:35 本科      30000  高        \n",
       "19  2020/3/16 11:30 本科      30000  高        \n",
       "20  2020/3/16 11:16 本科      30000  高        \n",
       "21  2020/3/16 11:01 不限      30000  高        \n",
       "22  2020/3/16 10:43 本科      30000  高        \n",
       "23  2020/3/16 10:44 本科      30000  高        \n",
       "24  2020/3/16 10:27 本科      30000  高        \n",
       "25  2020/3/16 11:19 本科      30000  高        \n",
       "26  2020/3/16 11:19 本科      30000  高        \n",
       "27  2020/3/16 10:48 本科      30000  高        \n",
       "28  2020/3/16 11:19 本科      30000  高        \n",
       "29  2020/3/16 11:30 本科      27500  高        \n",
       "30  2020/3/16 10:46 不限      27500  高        \n",
       "... ...             ...       ...    ...       \n",
       "106 2020/3/16 10:52 硕士      12500  低        \n",
       "107 2020/3/16 11:01 本科      12500  低        \n",
       "108 2020/3/16 11:18 本科      12500  低        \n",
       "109 2020/3/16 11:35 本科      12500  低        \n",
       "110 2020/3/16 11:13 本科      12500  低        \n",
       "111 2020/3/16 11:13 本科      12500  低        \n",
       "112 2020/3/16 09:44 硕士      12500  低        \n",
       "113 2020/3/16 10:59 本科      12000  低        \n",
       "114 2020/3/16 10:59 本科      12000  低        \n",
       "115 2020/3/16 10:18 本科      12000  低        \n",
       "116 2020/3/16 11:00 本科      11500  低        \n",
       "117 2020/3/16 11:35 本科      11500  低        \n",
       "118 2020/3/16 10:09 本科      11500  低        \n",
       "119 2020/3/16 10:45 本科      11000  低        \n",
       "120 2020/3/16 09:30 本科      10000  低        \n",
       "121 2020/3/16 10:51 本科       9500  低        \n",
       "122 2020/3/16 10:51 本科       9500  低        \n",
       "123 2020/3/16 11:32 本科       8500  低        \n",
       "124 2020/3/16 09:25 不限       7000  低        \n",
       "125 2020/3/16 11:20 本科       6500  低        \n",
       "126 2020/3/16 11:20 本科       6500  低        \n",
       "127 2020/3/16 10:50 本科       5000  低        \n",
       "128 2020/3/16 10:26 大专       5000  低        \n",
       "129 2020/3/16 10:26 大专       5000  低        \n",
       "130 2020/3/16 11:33 本科       5000  低        \n",
       "131 2020/3/16 11:20 本科       4500  低        \n",
       "132 2020/3/16 11:12 本科       4000  低        \n",
       "133 2020/3/16 11:12 本科       4000  低        \n",
       "134 2020/3/16 10:44 不限       3500  低        \n",
       "135 2020/3/16 10:48 本科       3500  低        "
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "df %>%\n",
    "  arrange(desc(salary))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 30.取出第33行数据"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 31,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<table>\n",
       "<thead><tr><th scope=col>﻿createTime</th><th scope=col>education</th><th scope=col>salary</th><th scope=col>categories</th></tr></thead>\n",
       "<tbody>\n",
       "\t<tr><td>2020/3/16 10:07</td><td>硕士           </td><td>22500          </td><td>高             </td></tr>\n",
       "</tbody>\n",
       "</table>\n"
      ],
      "text/latex": [
       "\\begin{tabular}{r|llll}\n",
       " ﻿createTime & education & salary & categories\\\\\n",
       "\\hline\n",
       "\t 2020/3/16 10:07 & 硕士            & 22500           & 高             \\\\\n",
       "\\end{tabular}\n"
      ],
      "text/markdown": [
       "\n",
       "﻿createTime | education | salary | categories | \n",
       "|---|\n",
       "| 2020/3/16 10:07 | 硕士            | 22500           | 高              | \n",
       "\n",
       "\n"
      ],
      "text/plain": [
       "  ﻿createTime      education salary categories\n",
       "1 2020/3/16 10:07 硕士      22500  高        "
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "df[33,]"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 31.计算salary列的中位数"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 32,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "17500"
      ],
      "text/latex": [
       "17500"
      ],
      "text/markdown": [
       "17500"
      ],
      "text/plain": [
       "[1] 17500"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "median(df$salary)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 32.绘制薪资水平频率分布直方图"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 36,
   "metadata": {
    "collapsed": false,
    "scrolled": true
   },
   "outputs": [
    {
     "data": {},
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAA0gAAANICAIAAAByhViMAAAABmJLR0QA/wD/AP+gvaeTAAAg\nAElEQVR4nO3deXzcdZ348e93ZjKZSeiRtogoIOh61rbiInZF2FVEdJcWsGC3rAjCKpfN6k8E\nVw4VFhTxWMspWzyQBXa92MJ6axVBCkhRBJdLWKBF0Ja2aZtkJpnk98fUbC20DW0m3847z+cf\nPGa+k4b3t5/JJ69+J0c6ODiYAADQ/HJZDwAAwMgQdgAAQQg7AIAghB0AQBDCDgAgCGEHABCE\nsAMACELYAQAEUch6gOHq6+sbGBjo7u7OepAGam9v7+vrq1arWQ/SQBMmTEiSpLu7u6+vL+tZ\nGiVN0/Hjx3d1dQX+6d8tLS1tbW1JkqxZsybrWRqoWCy2tLSsX78+60EaqK2traWlpa+vz+7a\n7OyuMQxzd+3o6NjcQ00TdnW1Wi3rERooTdPBwcHA55imaS6XS5Ik9mnmcrlcLjcwMDAwMJD1\nLI1SKBTqSxl4HevSNI19jvWPyrFwmkn0p6vdNYbt3129FAsAEISwAwAIQtgBAAQh7AAAghB2\nAABBCDsAgCCEHQBAEMIOACAIYQcAEISwAwAIQtgBAAQh7AAAghB2AABBCDsAgCCEHQBAEMIO\nACCIQtYDDFeaprlcrqWlJetBGiiXy+Xz+djnWBf7NHO5XJIkhUJhcHAw61kaJZ/P128EXsck\nSXK5XJqmsc8xTdP6f8OfZvjPIHWxd9f609XuumVps/ztDAwM5HK5Zpl226Rp0yzHNqt/WI6F\n0xwL55hYyuZXX8ck+lKGX8fEh2QgW13KWq1WKGz2wlzTXLGr1Wp9fX1r167NepAGmjBhQqVS\n6e3tzXqQRknTdPLkyUmSrFu3rlKpZD1Oo+RyuUmTJq1atWpgYCDrWRqltbV13LhxSZKsXLky\n61kaqFwuF4vFNWvWZD1IA40fP75YLFar1a6urqxnaaAJEyZUq9Wenp6sB2mgKVOmJHbX5jfM\n3bW+3M/K19gBAAQh7AAAghB2AABBCDsAgCCEHQBAEMIOACAIYQcAEISwAwAIQtgBAAQh7AAA\nghB2AABBCDsAgCCEHQBAEMIOACCIQtYDwLbo7OzMeoSRt2DBgqxHAKC5uWIHABCEsAMACELY\nAQAEIewAAIIQdgAAQQg7AIAghB0AQBDCDgAgCGEHABCEsAMACELYAQAEIewAAIIQdgAAQQg7\nAIAghB0AQBDCDgAgCGEHABCEsAMACELYAQAEIewAAIIQdgAAQQg7AIAghB0AQBDCDgAgCGEH\nABCEsAMACELYAQAEIewAAIIQdgAAQQg7AIAghB0AQBDCDgAgCGEHABCEsAMACELYAQAEIewA\nAIIQdgAAQQg7AIAghB0AQBDCDgAgCGEHABCEsAMACELYAQAEIewAAIIQdgAAQQg7AIAghB0A\nQBDCDgAgCGEHABCEsAMACELYAQAEIewAAIIQdgAAQQg7AIAghB0AQBDCDgAgCGEHABCEsAMA\nCELYAQAEMaph1/37n737HYdtfGTp9Re///ijjjrulAXfXjqakwAAxDN6YVfrfeScD120un9g\n6MiKuy4695r7Zh132mnHz37g2nMvumvFqA0DABDPKIXd4ED3FaefWXvLaRsfvHXhkr1PPfvg\n/V7zmv0OPvvUvZcsXDI6wwAAhFQYnf/ND77wodsnzFr4nn0Pv/7/Di5e0XPs1I767Y6ph/as\nuCpJDhl6tKur6+ijjx66O2/evLlz53Z0dIzOwJnI5XL5fL5cLmc9SMO1t7e3tbVlPcUOp4me\n3mma1m800czbIJfLJWPjHFtaWsKfZqFQKJVKWQ/ScLF31/rOM3HixMHBwaxnaZTh7K4DAwOb\neygZnbB74L/O+/K9e15y+Tvz6Z8dX1ap7VXaMEChtFetsmzjR2u12vLly4furlu3Lk3TfD7f\n+HmzNLSisdU/l7CJZnx6N+PMz9VYOMexsLsmY2Mpx8LuOhbOMdmOp2vDw271fV8/49+fPHvh\nZycXNl2JZ/R2beM7pVLpmGOOGbo7bdq0Wq1WrVYbM+YOobW1tb+/v1arbf1Nm1b9emS1Wo19\nmtump6cn6xGGK5/PF4vFpKlm3gaFQiGfz1cqlawHaaBisZjP58fC7lqr1fr7+7MepIHGwu6a\npmmpVOrt7Q18xW44u+vAwEB7e/vmHm142P3h5psqvY+e8a4jho7Mnj17l5nn/dtHp+3emn+s\nUpvaVkiSpFZ5PF/cfeM/WC6X58+fP3S3r6+vv79//fr1jR44Q4VCoVqt9vb2Zj1Io6RpWt96\nKpVK7E+W26aJnt6tra31raeJZt4G5XK5WCzGPsd8Pl8Pu9inWd9dY/87ZCzsrrlcrlQqdXd3\nb/m1yKY2zN01y7Db88gzL31b39Ddk08++dJLLy2Udk6S5MAp5UUPrp46Y0qSJKsfXFTe+cBG\n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\n0muSK+yUFjb8tVvK5lKafNh11103vb2l58nHfvubu75z1UUTXjq7/pClbDo/+MKHbp8w61Pv\n2Xfjg9axuVRW35rmSj//14/8wzvnHPu++Rd/85b+P/18uYYu5Y7+NXbLKrW9ShuGLJT2qlWW\nZTsPW7W5JRup44ysXfafdcSfbvd3P3rZx8+bduQn6nctZZO697NnnXP/qjQtzr/kw/UjlrK5\nPPBf53353j0vufyd+fTPjlvH5rL6nmVJMtj/yr89c+6ePU/d//Uv/us5xReeM2vPpMFLuaOH\n3TN+enItiyl4Dja3ZCN1nEYYrK3/2fVXX/P1m6cfcfLHj3jxhoObvpWlbA77XPjVb3SvvuVb\nn7r87Kve8qWTEkvZVFbf9/Uz/v3Jsxd+dnJh05fUrGNzecGbPnb1/i3jdiomSZK85MUv22P9\nMadensz6VNLgpdzRX4rdvTX/WGXDCdQqj+eLu2c7D1u1uSUbqeOMuK7f/eSME4/7/rJxp192\n5fuP+KuhawSWsrl0//6e2395f/12sW3iX889tXfVz+p3LWUT+cPNN1V6Hz3jXUfMnj179uzZ\nSZLMnj37vef/JrGOzSZfat9QdUmSJEn7rgf19z5cv93QpdzRw+7AKeVFD66u31794KLyzgdm\nOw9btbklG6njjKzqmls/cPqlU9/9yU/+01Ev6Shu/JClbC7dT33j/PPOWVPb8G/4/t6Hcy07\n129byiay55FnXrqRJEkuvfTSc9/3ssQ6NptvffSDZ1y0dOhuz1OLi+M2fNFkQ5cy//GPf7xh\nJzUCJu/2hysu+M6er/iLylP3f+FT33zNB07eZ5dy1kPxZ6699tp58+YN3d3cko3UcUbWrz93\nzk+69v27109ctpHddtstsZTNpnXiHt//1o0/fazvBRNLK5fdf+0XLmn5mw++dcbzEkvZVPKl\nncZv5Nprrz3hhBN2aisk1rHZjB/89Zevu+apvmI+n/7+wTu++Omv7f2BM/bZtS1p8FKmg4PP\neIl2B/Prby644jtLVieTZh5ywvzDp2U9DpuaPXv2okWLNj6yuSUbqeOMoMuOfed3n+7d5ODQ\nglrK5rLy7u9e9p8/vv+B/82N32XvNx9+4t8fWPrTz5q2lE1qkw3WOjaXhxZ/7cpFt/7usRWT\ndtvzTXP+ce4BLxt6qHFL2QRhBwDAcOzoX2MHAMAwCTsAgCCEHQBAEMIOACAIYQcAEISwAwAI\nQtgBAAQh7AAAghB2AFuRpmmapllPAbB1wg4AIAhhBwAQhLADAAhC2AFjx8B/Lzzv4H2nv3DK\n+OJOk1869XUf+NRX1tUGkyRJktpPv3rugfvts8fzJhTbJ+75sunvOe0zy6q1Z3snW3rL+lfj\nDfQ/fea8/cYX8+ecNSNN04ufWLfxn581pW2n5x/b2BMFxqp0cHAw6xkARsP3Tt3v7Z/9RfsL\nZsw+5C0vLj39wxu/cfvDa6e991t3X3H4f588/ZDLfpNvmXLUKf/4kpZVP7zhP265b/UL33zh\nsh+fmiRJ/Tsn6rvlcN7yy+98yYk/Khzw+pedcdkxf7PnEdM/fPuvP/26+gzrnrhs3AtPfsPF\n995yyqsy+4sA4hJ2wFjxgtbC76u1n63qPWBia5Ik1a5b93jZ4fnirssfu2u3UmF5pfa6C391\n+6kzkiTpW//r4k6vyeXbav3rkz8Pu+G85fP3O+2exZ+c3JJLkuSY5+/0jYFZ6/9wbX2GW+e/\ner9LH7h19brXjytm8pcAxOalWGCseFVbS5Ik3150c/3l1+L4v3ryySeXP3ZXkiS/WvbkH//4\nxx9/cHr9LWvd65MkGah1P/OdDOctz7jurHrVJUnygRNf1v3H6/5rZW+SJEkycObVv+t4xb+o\nOqBBXLEDxorlP7rgLUecfd+aamvHi9/05v3f+KaDDp/zjlc9v1x/dM1Dd3z/5juWLl269M7b\nblpyb2VgMPnTVbqNr9gN5y2f7hvoKGz4uXfdT32l/fnvef0X7lnSOXXtY58d/6JT53zvsW8c\nvPtonzwwNgg7YAypVf5403du/O4PF9/8sx/c+tun8i2T/+mq2z779y956N/fP/3dl1ZyE958\nxLuOnPXWAw444JW7T0yeLeyG/5ZDDpncdlP7yV2Pfeamf3zFm7+2etnaJ55f9GoJ0BDCDhgr\nbrnllnzri2bus1v97r0/+NSrD/7n1vEze9fc+qaO8k9X9375ka5j9xyXJEkyWE1zrcmz5drw\n33LIks5Xv+Hi+5as7vrA7pMe3/eqx3/4zlE7ZWCs8a9GYKx471vf9DcHHrF2w883SV7yl3+Z\nJEmt+mSSJHetqyZJ8le7bHhZdtmPz9zcOxn+Ww6Z+uHjBgdrp1x68q1dlbmfP3C7zgFgi4Qd\nMFZcdPKMStdtL5rxt6eeee6H3vv3+7zq0CRJ9j/1y0mSnD1zlyRJ/uaguedddNFH5x857e9/\nuEepkCTJh7/w1Yd7/+yn2Q3/LYeM2/0Dbxjf+st//mpx3D7nT53c4LMExjQvxQJjxeDA+qsv\n/Ojnv3Lj/z7+eLU4ec+XvPqokz70kePelkuSvnV3//Nxp1zzozu7y7v/1f6zPnPF+V2XnfTe\nS771v+vbvnL/Q0fu3Jb86QXW4b/lxhYf/bI3X/3gK0/4+W8vf+Ponzgwdgg7gIZ77L8PetEh\nP1r4xLrjd23PehYgMi/FAjTct8/4VfsuR6s6oNEKWQ8AENmKtb0rf3X5h+9e+ZavnJX1LEB8\nwg6ggfboaOupDe575LnfeNdfZD0LEJ+vsQNooMqaJ5+qtO/xvHFZDwKMCcIOACAI3zwBABCE\nsAMACELYAQAEIewAAIIQdgAAQQg7AIAghB0AQBDCDgAgiP8PmlN/QUjeFw4AAAAASUVORK5C\nYII=",
      "text/plain": [
       "plot without title"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "library(ggplot2)\n",
    "\n",
    "df %>%\n",
    "  ggplot(aes(salary)) +\n",
    "  geom_histogram(bins = 10) # 这个跟python的bins一致\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 32绘制薪资水平密度曲线"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 35,
   "metadata": {
    "collapsed": false,
    "scrolled": true
   },
   "outputs": [
    {
     "data": {},
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "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\nSUVORK5CYII=",
      "text/plain": [
       "plot without title"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "df %>%\n",
    "  ggplot(aes(salary)) +\n",
    "  geom_density() +\n",
    "  xlim(c(0,70000))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 34删除最后一列categories"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 38,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "df <- df[,-4]"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 35将df的第一列与第二列合并为新的一列"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 40,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Warning message:\n",
      "“Unknown column 'createTime'”"
     ]
    }
   ],
   "source": [
    "df <- df %>%\n",
    "  mutate(test = paste0(df$education,df$createTime))\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 36将education列与salary列合并为新的一列\n",
    "备注：salary为int类型，操作与35题有所不同"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 42,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "df <- df %>%\n",
    "  mutate(test1 =\n",
    "           paste0(df$salary,df$education))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 37.计算salary最大值与最小值之差"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 44,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<strong>delta:</strong> 41500"
      ],
      "text/latex": [
       "\\textbf{delta:} 41500"
      ],
      "text/markdown": [
       "**delta:** 41500"
      ],
      "text/plain": [
       "delta \n",
       "41500 "
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "df %>%\n",
    "  summarise(delta = max(salary) - min(salary)) %>%\n",
    "  unlist()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "collapsed": true,
    "deletable": true,
    "editable": true
   },
   "source": [
    "### 38.将第一行与最后一行拼接"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 45,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<table>\n",
       "<thead><tr><th scope=col>﻿createTime</th><th scope=col>education</th><th scope=col>salary</th><th scope=col>test</th><th scope=col>test1</th></tr></thead>\n",
       "<tbody>\n",
       "\t<tr><td>2020/3/16 11:30</td><td>本科           </td><td>27500          </td><td>本科           </td><td>27500本科      </td></tr>\n",
       "\t<tr><td>2020/3/16 11:19</td><td>本科           </td><td>30000          </td><td>本科           </td><td>30000本科      </td></tr>\n",
       "</tbody>\n",
       "</table>\n"
      ],
      "text/latex": [
       "\\begin{tabular}{r|lllll}\n",
       " ﻿createTime & education & salary & test & test1\\\\\n",
       "\\hline\n",
       "\t 2020/3/16 11:30 & 本科            & 27500           & 本科            & 27500本科      \\\\\n",
       "\t 2020/3/16 11:19 & 本科            & 30000           & 本科            & 30000本科      \\\\\n",
       "\\end{tabular}\n"
      ],
      "text/markdown": [
       "\n",
       "﻿createTime | education | salary | test | test1 | \n",
       "|---|---|\n",
       "| 2020/3/16 11:30 | 本科            | 27500           | 本科            | 27500本科       | \n",
       "| 2020/3/16 11:19 | 本科            | 30000           | 本科            | 30000本科       | \n",
       "\n",
       "\n"
      ],
      "text/plain": [
       "  ﻿createTime      education salary test test1    \n",
       "1 2020/3/16 11:30 本科      27500  本科 27500本科\n",
       "2 2020/3/16 11:19 本科      30000  本科 30000本科"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "rbind(df[1,],df[dim(df)[1],])"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 39.将第8行数据添加至末尾"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 46,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<table>\n",
       "<thead><tr><th scope=col>﻿createTime</th><th scope=col>education</th><th scope=col>salary</th><th scope=col>test</th><th scope=col>test1</th></tr></thead>\n",
       "<tbody>\n",
       "\t<tr><td>2020/3/16 11:30</td><td>本科           </td><td>27500          </td><td>本科           </td><td>27500本科      </td></tr>\n",
       "\t<tr><td>2020/3/16 10:58</td><td>本科           </td><td>30000          </td><td>本科           </td><td>30000本科      </td></tr>\n",
       "\t<tr><td>2020/3/16 10:46</td><td>不限           </td><td>27500          </td><td>不限           </td><td>27500不限      </td></tr>\n",
       "\t<tr><td>2020/3/16 10:45</td><td>本科           </td><td>16500          </td><td>本科           </td><td>16500本科      </td></tr>\n",
       "\t<tr><td>2020/3/16 10:20</td><td>本科           </td><td>15000          </td><td>本科           </td><td>15000本科      </td></tr>\n",
       "\t<tr><td>2020/3/16 10:33</td><td>本科           </td><td>14000          </td><td>本科           </td><td>14000本科      </td></tr>\n",
       "\t<tr><td>2020/3/16 10:11</td><td>硕士           </td><td>23000          </td><td>硕士           </td><td>23000硕士      </td></tr>\n",
       "\t<tr><td>2020/3/16 09:49</td><td>本科           </td><td>12500          </td><td>本科           </td><td>12500本科      </td></tr>\n",
       "\t<tr><td>2020/3/16 09:25</td><td>不限           </td><td> 7000          </td><td>不限           </td><td>7000不限       </td></tr>\n",
       "\t<tr><td>2020/3/16 09:35</td><td>本科           </td><td>16000          </td><td>本科           </td><td>16000本科      </td></tr>\n",
       "\t<tr><td>2020/3/16 10:34</td><td>本科           </td><td>20000          </td><td>本科           </td><td>20000本科      </td></tr>\n",
       "\t<tr><td>2020/3/16 09:30</td><td>本科           </td><td>10000          </td><td>本科           </td><td>10000本科      </td></tr>\n",
       "\t<tr><td>2020/3/16 11:30</td><td>本科           </td><td>30000          </td><td>本科           </td><td>30000本科      </td></tr>\n",
       "\t<tr><td>2020/3/16 10:54</td><td>本科           </td><td>25000          </td><td>本科           </td><td>25000本科      </td></tr>\n",
       "\t<tr><td>2020/3/15 12:14</td><td>本科           </td><td>30000          </td><td>本科           </td><td>30000本科      </td></tr>\n",
       "\t<tr><td>2020/3/16 10:52</td><td>硕士           </td><td>12500          </td><td>硕士           </td><td>12500硕士      </td></tr>\n",
       "\t<tr><td>2020/3/16 10:36</td><td>本科           </td><td>37500          </td><td>本科           </td><td>37500本科      </td></tr>\n",
       "\t<tr><td>2020/3/16 11:01</td><td>本科           </td><td>12500          </td><td>本科           </td><td>12500本科      </td></tr>\n",
       "\t<tr><td>2020/3/16 11:01</td><td>本科           </td><td>35000          </td><td>本科           </td><td>35000本科      </td></tr>\n",
       "\t<tr><td>2020/3/16 11:03</td><td>本科           </td><td>20000          </td><td>本科           </td><td>20000本科      </td></tr>\n",
       "\t<tr><td>2020/3/16 11:00</td><td>本科           </td><td>11500          </td><td>本科           </td><td>11500本科      </td></tr>\n",
       "\t<tr><td>2020/3/16 11:04</td><td>本科           </td><td>30000          </td><td>本科           </td><td>30000本科      </td></tr>\n",
       "\t<tr><td>2020/3/16 11:30</td><td>本科           </td><td>20000          </td><td>本科           </td><td>20000本科      </td></tr>\n",
       "\t<tr><td>2020/3/16 11:02</td><td>本科           </td><td>22500          </td><td>本科           </td><td>22500本科      </td></tr>\n",
       "\t<tr><td>2020/3/16 11:01</td><td>本科           </td><td>17500          </td><td>本科           </td><td>17500本科      </td></tr>\n",
       "\t<tr><td>2020/3/16 11:19</td><td>本科           </td><td>15000          </td><td>本科           </td><td>15000本科      </td></tr>\n",
       "\t<tr><td>2020/3/16 11:04</td><td>本科           </td><td>30000          </td><td>本科           </td><td>30000本科      </td></tr>\n",
       "\t<tr><td>2020/3/16 11:04</td><td>本科           </td><td>30000          </td><td>本科           </td><td>30000本科      </td></tr>\n",
       "\t<tr><td>2020/3/16 11:30</td><td>本科           </td><td>20000          </td><td>本科           </td><td>20000本科      </td></tr>\n",
       "\t<tr><td>2020/3/16 10:27</td><td>本科           </td><td>17500          </td><td>本科           </td><td>17500本科      </td></tr>\n",
       "\t<tr><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td></tr>\n",
       "\t<tr><td>2020/3/16 10:21</td><td>大专           </td><td>15000          </td><td>大专           </td><td>15000大专      </td></tr>\n",
       "\t<tr><td>2020/3/16 10:59</td><td>本科           </td><td>16000          </td><td>本科           </td><td>16000本科      </td></tr>\n",
       "\t<tr><td>2020/3/16 11:13</td><td>本科           </td><td>12500          </td><td>本科           </td><td>12500本科      </td></tr>\n",
       "\t<tr><td>2020/3/16 10:26</td><td>大专           </td><td> 5000          </td><td>大专           </td><td>5000大专       </td></tr>\n",
       "\t<tr><td>2020/3/16 11:12</td><td>本科           </td><td> 4000          </td><td>本科           </td><td>4000本科       </td></tr>\n",
       "\t<tr><td>2020/3/16 10:52</td><td>本科           </td><td>16000          </td><td>本科           </td><td>16000本科      </td></tr>\n",
       "\t<tr><td>2020/3/16 11:13</td><td>本科           </td><td>26500          </td><td>本科           </td><td>26500本科      </td></tr>\n",
       "\t<tr><td>2020/3/16 10:48</td><td>本科           </td><td> 3500          </td><td>本科           </td><td>3500本科       </td></tr>\n",
       "\t<tr><td>2020/3/16 10:43</td><td>本科           </td><td>14000          </td><td>本科           </td><td>14000本科      </td></tr>\n",
       "\t<tr><td>2020/3/16 11:32</td><td>本科           </td><td> 8500          </td><td>本科           </td><td>8500本科       </td></tr>\n",
       "\t<tr><td>2020/3/16 11:30</td><td>本科           </td><td>20000          </td><td>本科           </td><td>20000本科      </td></tr>\n",
       "\t<tr><td>2020/3/16 11:19</td><td>本科           </td><td>30000          </td><td>本科           </td><td>30000本科      </td></tr>\n",
       "\t<tr><td>2020/3/16 11:19</td><td>本科           </td><td>30000          </td><td>本科           </td><td>30000本科      </td></tr>\n",
       "\t<tr><td>2020/3/16 09:28</td><td>本科           </td><td>18500          </td><td>本科           </td><td>18500本科      </td></tr>\n",
       "\t<tr><td>2020/3/16 10:09</td><td>本科           </td><td>11500          </td><td>本科           </td><td>11500本科      </td></tr>\n",
       "\t<tr><td>2020/3/16 11:33</td><td>本科           </td><td> 5000          </td><td>本科           </td><td>5000本科       </td></tr>\n",
       "\t<tr><td>2020/3/16 11:21</td><td>本科           </td><td>16000          </td><td>本科           </td><td>16000本科      </td></tr>\n",
       "\t<tr><td>2020/3/16 11:20</td><td>本科           </td><td> 4500          </td><td>本科           </td><td>4500本科       </td></tr>\n",
       "\t<tr><td>2020/3/16 10:00</td><td>本科           </td><td>20000          </td><td>本科           </td><td>20000本科      </td></tr>\n",
       "\t<tr><td>2020/3/16 11:13</td><td>本科           </td><td>12500          </td><td>本科           </td><td>12500本科      </td></tr>\n",
       "\t<tr><td>2020/3/16 11:12</td><td>本科           </td><td> 4000          </td><td>本科           </td><td>4000本科       </td></tr>\n",
       "\t<tr><td>2020/3/16 09:44</td><td>硕士           </td><td>12500          </td><td>硕士           </td><td>12500硕士      </td></tr>\n",
       "\t<tr><td>2020/3/16 10:57</td><td>本科           </td><td>22500          </td><td>本科           </td><td>22500本科      </td></tr>\n",
       "\t<tr><td>2020/3/16 09:46</td><td>本科           </td><td>20000          </td><td>本科           </td><td>20000本科      </td></tr>\n",
       "\t<tr><td>2020/3/16 11:36</td><td>本科           </td><td>14000          </td><td>本科           </td><td>14000本科      </td></tr>\n",
       "\t<tr><td>2020/3/16 09:54</td><td>硕士           </td><td>37500          </td><td>硕士           </td><td>37500硕士      </td></tr>\n",
       "\t<tr><td>2020/3/16 10:48</td><td>本科           </td><td>30000          </td><td>本科           </td><td>30000本科      </td></tr>\n",
       "\t<tr><td>2020/3/16 10:46</td><td>本科           </td><td>19000          </td><td>本科           </td><td>19000本科      </td></tr>\n",
       "\t<tr><td>2020/3/16 11:19</td><td>本科           </td><td>30000          </td><td>本科           </td><td>30000本科      </td></tr>\n",
       "\t<tr><td>2020/3/16 09:49</td><td>本科           </td><td>12500          </td><td>本科           </td><td>12500本科      </td></tr>\n",
       "</tbody>\n",
       "</table>\n"
      ],
      "text/latex": [
       "\\begin{tabular}{r|lllll}\n",
       " ﻿createTime & education & salary & test & test1\\\\\n",
       "\\hline\n",
       "\t 2020/3/16 11:30 & 本科            & 27500           & 本科            & 27500本科      \\\\\n",
       "\t 2020/3/16 10:58 & 本科            & 30000           & 本科            & 30000本科      \\\\\n",
       "\t 2020/3/16 10:46 & 不限            & 27500           & 不限            & 27500不限      \\\\\n",
       "\t 2020/3/16 10:45 & 本科            & 16500           & 本科            & 16500本科      \\\\\n",
       "\t 2020/3/16 10:20 & 本科            & 15000           & 本科            & 15000本科      \\\\\n",
       "\t 2020/3/16 10:33 & 本科            & 14000           & 本科            & 14000本科      \\\\\n",
       "\t 2020/3/16 10:11 & 硕士            & 23000           & 硕士            & 23000硕士      \\\\\n",
       "\t 2020/3/16 09:49 & 本科            & 12500           & 本科            & 12500本科      \\\\\n",
       "\t 2020/3/16 09:25 & 不限            &  7000           & 不限            & 7000不限       \\\\\n",
       "\t 2020/3/16 09:35 & 本科            & 16000           & 本科            & 16000本科      \\\\\n",
       "\t 2020/3/16 10:34 & 本科            & 20000           & 本科            & 20000本科      \\\\\n",
       "\t 2020/3/16 09:30 & 本科            & 10000           & 本科            & 10000本科      \\\\\n",
       "\t 2020/3/16 11:30 & 本科            & 30000           & 本科            & 30000本科      \\\\\n",
       "\t 2020/3/16 10:54 & 本科            & 25000           & 本科            & 25000本科      \\\\\n",
       "\t 2020/3/15 12:14 & 本科            & 30000           & 本科            & 30000本科      \\\\\n",
       "\t 2020/3/16 10:52 & 硕士            & 12500           & 硕士            & 12500硕士      \\\\\n",
       "\t 2020/3/16 10:36 & 本科            & 37500           & 本科            & 37500本科      \\\\\n",
       "\t 2020/3/16 11:01 & 本科            & 12500           & 本科            & 12500本科      \\\\\n",
       "\t 2020/3/16 11:01 & 本科            & 35000           & 本科            & 35000本科      \\\\\n",
       "\t 2020/3/16 11:03 & 本科            & 20000           & 本科            & 20000本科      \\\\\n",
       "\t 2020/3/16 11:00 & 本科            & 11500           & 本科            & 11500本科      \\\\\n",
       "\t 2020/3/16 11:04 & 本科            & 30000           & 本科            & 30000本科      \\\\\n",
       "\t 2020/3/16 11:30 & 本科            & 20000           & 本科            & 20000本科      \\\\\n",
       "\t 2020/3/16 11:02 & 本科            & 22500           & 本科            & 22500本科      \\\\\n",
       "\t 2020/3/16 11:01 & 本科            & 17500           & 本科            & 17500本科      \\\\\n",
       "\t 2020/3/16 11:19 & 本科            & 15000           & 本科            & 15000本科      \\\\\n",
       "\t 2020/3/16 11:04 & 本科            & 30000           & 本科            & 30000本科      \\\\\n",
       "\t 2020/3/16 11:04 & 本科            & 30000           & 本科            & 30000本科      \\\\\n",
       "\t 2020/3/16 11:30 & 本科            & 20000           & 本科            & 20000本科      \\\\\n",
       "\t 2020/3/16 10:27 & 本科            & 17500           & 本科            & 17500本科      \\\\\n",
       "\t ... & ... & ... & ... & ...\\\\\n",
       "\t 2020/3/16 10:21 & 大专            & 15000           & 大专            & 15000大专      \\\\\n",
       "\t 2020/3/16 10:59 & 本科            & 16000           & 本科            & 16000本科      \\\\\n",
       "\t 2020/3/16 11:13 & 本科            & 12500           & 本科            & 12500本科      \\\\\n",
       "\t 2020/3/16 10:26 & 大专            &  5000           & 大专            & 5000大专       \\\\\n",
       "\t 2020/3/16 11:12 & 本科            &  4000           & 本科            & 4000本科       \\\\\n",
       "\t 2020/3/16 10:52 & 本科            & 16000           & 本科            & 16000本科      \\\\\n",
       "\t 2020/3/16 11:13 & 本科            & 26500           & 本科            & 26500本科      \\\\\n",
       "\t 2020/3/16 10:48 & 本科            &  3500           & 本科            & 3500本科       \\\\\n",
       "\t 2020/3/16 10:43 & 本科            & 14000           & 本科            & 14000本科      \\\\\n",
       "\t 2020/3/16 11:32 & 本科            &  8500           & 本科            & 8500本科       \\\\\n",
       "\t 2020/3/16 11:30 & 本科            & 20000           & 本科            & 20000本科      \\\\\n",
       "\t 2020/3/16 11:19 & 本科            & 30000           & 本科            & 30000本科      \\\\\n",
       "\t 2020/3/16 11:19 & 本科            & 30000           & 本科            & 30000本科      \\\\\n",
       "\t 2020/3/16 09:28 & 本科            & 18500           & 本科            & 18500本科      \\\\\n",
       "\t 2020/3/16 10:09 & 本科            & 11500           & 本科            & 11500本科      \\\\\n",
       "\t 2020/3/16 11:33 & 本科            &  5000           & 本科            & 5000本科       \\\\\n",
       "\t 2020/3/16 11:21 & 本科            & 16000           & 本科            & 16000本科      \\\\\n",
       "\t 2020/3/16 11:20 & 本科            &  4500           & 本科            & 4500本科       \\\\\n",
       "\t 2020/3/16 10:00 & 本科            & 20000           & 本科            & 20000本科      \\\\\n",
       "\t 2020/3/16 11:13 & 本科            & 12500           & 本科            & 12500本科      \\\\\n",
       "\t 2020/3/16 11:12 & 本科            &  4000           & 本科            & 4000本科       \\\\\n",
       "\t 2020/3/16 09:44 & 硕士            & 12500           & 硕士            & 12500硕士      \\\\\n",
       "\t 2020/3/16 10:57 & 本科            & 22500           & 本科            & 22500本科      \\\\\n",
       "\t 2020/3/16 09:46 & 本科            & 20000           & 本科            & 20000本科      \\\\\n",
       "\t 2020/3/16 11:36 & 本科            & 14000           & 本科            & 14000本科      \\\\\n",
       "\t 2020/3/16 09:54 & 硕士            & 37500           & 硕士            & 37500硕士      \\\\\n",
       "\t 2020/3/16 10:48 & 本科            & 30000           & 本科            & 30000本科      \\\\\n",
       "\t 2020/3/16 10:46 & 本科            & 19000           & 本科            & 19000本科      \\\\\n",
       "\t 2020/3/16 11:19 & 本科            & 30000           & 本科            & 30000本科      \\\\\n",
       "\t 2020/3/16 09:49 & 本科            & 12500           & 本科            & 12500本科      \\\\\n",
       "\\end{tabular}\n"
      ],
      "text/markdown": [
       "\n",
       "﻿createTime | education | salary | test | test1 | \n",
       "|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|\n",
       "| 2020/3/16 11:30 | 本科            | 27500           | 本科            | 27500本科       | \n",
       "| 2020/3/16 10:58 | 本科            | 30000           | 本科            | 30000本科       | \n",
       "| 2020/3/16 10:46 | 不限            | 27500           | 不限            | 27500不限       | \n",
       "| 2020/3/16 10:45 | 本科            | 16500           | 本科            | 16500本科       | \n",
       "| 2020/3/16 10:20 | 本科            | 15000           | 本科            | 15000本科       | \n",
       "| 2020/3/16 10:33 | 本科            | 14000           | 本科            | 14000本科       | \n",
       "| 2020/3/16 10:11 | 硕士            | 23000           | 硕士            | 23000硕士       | \n",
       "| 2020/3/16 09:49 | 本科            | 12500           | 本科            | 12500本科       | \n",
       "| 2020/3/16 09:25 | 不限            |  7000           | 不限            | 7000不限        | \n",
       "| 2020/3/16 09:35 | 本科            | 16000           | 本科            | 16000本科       | \n",
       "| 2020/3/16 10:34 | 本科            | 20000           | 本科            | 20000本科       | \n",
       "| 2020/3/16 09:30 | 本科            | 10000           | 本科            | 10000本科       | \n",
       "| 2020/3/16 11:30 | 本科            | 30000           | 本科            | 30000本科       | \n",
       "| 2020/3/16 10:54 | 本科            | 25000           | 本科            | 25000本科       | \n",
       "| 2020/3/15 12:14 | 本科            | 30000           | 本科            | 30000本科       | \n",
       "| 2020/3/16 10:52 | 硕士            | 12500           | 硕士            | 12500硕士       | \n",
       "| 2020/3/16 10:36 | 本科            | 37500           | 本科            | 37500本科       | \n",
       "| 2020/3/16 11:01 | 本科            | 12500           | 本科            | 12500本科       | \n",
       "| 2020/3/16 11:01 | 本科            | 35000           | 本科            | 35000本科       | \n",
       "| 2020/3/16 11:03 | 本科            | 20000           | 本科            | 20000本科       | \n",
       "| 2020/3/16 11:00 | 本科            | 11500           | 本科            | 11500本科       | \n",
       "| 2020/3/16 11:04 | 本科            | 30000           | 本科            | 30000本科       | \n",
       "| 2020/3/16 11:30 | 本科            | 20000           | 本科            | 20000本科       | \n",
       "| 2020/3/16 11:02 | 本科            | 22500           | 本科            | 22500本科       | \n",
       "| 2020/3/16 11:01 | 本科            | 17500           | 本科            | 17500本科       | \n",
       "| 2020/3/16 11:19 | 本科            | 15000           | 本科            | 15000本科       | \n",
       "| 2020/3/16 11:04 | 本科            | 30000           | 本科            | 30000本科       | \n",
       "| 2020/3/16 11:04 | 本科            | 30000           | 本科            | 30000本科       | \n",
       "| 2020/3/16 11:30 | 本科            | 20000           | 本科            | 20000本科       | \n",
       "| 2020/3/16 10:27 | 本科            | 17500           | 本科            | 17500本科       | \n",
       "| ... | ... | ... | ... | ... | \n",
       "| 2020/3/16 10:21 | 大专            | 15000           | 大专            | 15000大专       | \n",
       "| 2020/3/16 10:59 | 本科            | 16000           | 本科            | 16000本科       | \n",
       "| 2020/3/16 11:13 | 本科            | 12500           | 本科            | 12500本科       | \n",
       "| 2020/3/16 10:26 | 大专            |  5000           | 大专            | 5000大专        | \n",
       "| 2020/3/16 11:12 | 本科            |  4000           | 本科            | 4000本科        | \n",
       "| 2020/3/16 10:52 | 本科            | 16000           | 本科            | 16000本科       | \n",
       "| 2020/3/16 11:13 | 本科            | 26500           | 本科            | 26500本科       | \n",
       "| 2020/3/16 10:48 | 本科            |  3500           | 本科            | 3500本科        | \n",
       "| 2020/3/16 10:43 | 本科            | 14000           | 本科            | 14000本科       | \n",
       "| 2020/3/16 11:32 | 本科            |  8500           | 本科            | 8500本科        | \n",
       "| 2020/3/16 11:30 | 本科            | 20000           | 本科            | 20000本科       | \n",
       "| 2020/3/16 11:19 | 本科            | 30000           | 本科            | 30000本科       | \n",
       "| 2020/3/16 11:19 | 本科            | 30000           | 本科            | 30000本科       | \n",
       "| 2020/3/16 09:28 | 本科            | 18500           | 本科            | 18500本科       | \n",
       "| 2020/3/16 10:09 | 本科            | 11500           | 本科            | 11500本科       | \n",
       "| 2020/3/16 11:33 | 本科            |  5000           | 本科            | 5000本科        | \n",
       "| 2020/3/16 11:21 | 本科            | 16000           | 本科            | 16000本科       | \n",
       "| 2020/3/16 11:20 | 本科            |  4500           | 本科            | 4500本科        | \n",
       "| 2020/3/16 10:00 | 本科            | 20000           | 本科            | 20000本科       | \n",
       "| 2020/3/16 11:13 | 本科            | 12500           | 本科            | 12500本科       | \n",
       "| 2020/3/16 11:12 | 本科            |  4000           | 本科            | 4000本科        | \n",
       "| 2020/3/16 09:44 | 硕士            | 12500           | 硕士            | 12500硕士       | \n",
       "| 2020/3/16 10:57 | 本科            | 22500           | 本科            | 22500本科       | \n",
       "| 2020/3/16 09:46 | 本科            | 20000           | 本科            | 20000本科       | \n",
       "| 2020/3/16 11:36 | 本科            | 14000           | 本科            | 14000本科       | \n",
       "| 2020/3/16 09:54 | 硕士            | 37500           | 硕士            | 37500硕士       | \n",
       "| 2020/3/16 10:48 | 本科            | 30000           | 本科            | 30000本科       | \n",
       "| 2020/3/16 10:46 | 本科            | 19000           | 本科            | 19000本科       | \n",
       "| 2020/3/16 11:19 | 本科            | 30000           | 本科            | 30000本科       | \n",
       "| 2020/3/16 09:49 | 本科            | 12500           | 本科            | 12500本科       | \n",
       "\n",
       "\n"
      ],
      "text/plain": [
       "    ﻿createTime      education salary test test1    \n",
       "1   2020/3/16 11:30 本科      27500  本科 27500本科\n",
       "2   2020/3/16 10:58 本科      30000  本科 30000本科\n",
       "3   2020/3/16 10:46 不限      27500  不限 27500不限\n",
       "4   2020/3/16 10:45 本科      16500  本科 16500本科\n",
       "5   2020/3/16 10:20 本科      15000  本科 15000本科\n",
       "6   2020/3/16 10:33 本科      14000  本科 14000本科\n",
       "7   2020/3/16 10:11 硕士      23000  硕士 23000硕士\n",
       "8   2020/3/16 09:49 本科      12500  本科 12500本科\n",
       "9   2020/3/16 09:25 不限       7000  不限 7000不限 \n",
       "10  2020/3/16 09:35 本科      16000  本科 16000本科\n",
       "11  2020/3/16 10:34 本科      20000  本科 20000本科\n",
       "12  2020/3/16 09:30 本科      10000  本科 10000本科\n",
       "13  2020/3/16 11:30 本科      30000  本科 30000本科\n",
       "14  2020/3/16 10:54 本科      25000  本科 25000本科\n",
       "15  2020/3/15 12:14 本科      30000  本科 30000本科\n",
       "16  2020/3/16 10:52 硕士      12500  硕士 12500硕士\n",
       "17  2020/3/16 10:36 本科      37500  本科 37500本科\n",
       "18  2020/3/16 11:01 本科      12500  本科 12500本科\n",
       "19  2020/3/16 11:01 本科      35000  本科 35000本科\n",
       "20  2020/3/16 11:03 本科      20000  本科 20000本科\n",
       "21  2020/3/16 11:00 本科      11500  本科 11500本科\n",
       "22  2020/3/16 11:04 本科      30000  本科 30000本科\n",
       "23  2020/3/16 11:30 本科      20000  本科 20000本科\n",
       "24  2020/3/16 11:02 本科      22500  本科 22500本科\n",
       "25  2020/3/16 11:01 本科      17500  本科 17500本科\n",
       "26  2020/3/16 11:19 本科      15000  本科 15000本科\n",
       "27  2020/3/16 11:04 本科      30000  本科 30000本科\n",
       "28  2020/3/16 11:04 本科      30000  本科 30000本科\n",
       "29  2020/3/16 11:30 本科      20000  本科 20000本科\n",
       "30  2020/3/16 10:27 本科      17500  本科 17500本科\n",
       "... ...             ...       ...    ...  ...      \n",
       "107 2020/3/16 10:21 大专      15000  大专 15000大专\n",
       "108 2020/3/16 10:59 本科      16000  本科 16000本科\n",
       "109 2020/3/16 11:13 本科      12500  本科 12500本科\n",
       "110 2020/3/16 10:26 大专       5000  大专 5000大专 \n",
       "111 2020/3/16 11:12 本科       4000  本科 4000本科 \n",
       "112 2020/3/16 10:52 本科      16000  本科 16000本科\n",
       "113 2020/3/16 11:13 本科      26500  本科 26500本科\n",
       "114 2020/3/16 10:48 本科       3500  本科 3500本科 \n",
       "115 2020/3/16 10:43 本科      14000  本科 14000本科\n",
       "116 2020/3/16 11:32 本科       8500  本科 8500本科 \n",
       "117 2020/3/16 11:30 本科      20000  本科 20000本科\n",
       "118 2020/3/16 11:19 本科      30000  本科 30000本科\n",
       "119 2020/3/16 11:19 本科      30000  本科 30000本科\n",
       "120 2020/3/16 09:28 本科      18500  本科 18500本科\n",
       "121 2020/3/16 10:09 本科      11500  本科 11500本科\n",
       "122 2020/3/16 11:33 本科       5000  本科 5000本科 \n",
       "123 2020/3/16 11:21 本科      16000  本科 16000本科\n",
       "124 2020/3/16 11:20 本科       4500  本科 4500本科 \n",
       "125 2020/3/16 10:00 本科      20000  本科 20000本科\n",
       "126 2020/3/16 11:13 本科      12500  本科 12500本科\n",
       "127 2020/3/16 11:12 本科       4000  本科 4000本科 \n",
       "128 2020/3/16 09:44 硕士      12500  硕士 12500硕士\n",
       "129 2020/3/16 10:57 本科      22500  本科 22500本科\n",
       "130 2020/3/16 09:46 本科      20000  本科 20000本科\n",
       "131 2020/3/16 11:36 本科      14000  本科 14000本科\n",
       "132 2020/3/16 09:54 硕士      37500  硕士 37500硕士\n",
       "133 2020/3/16 10:48 本科      30000  本科 30000本科\n",
       "134 2020/3/16 10:46 本科      19000  本科 19000本科\n",
       "135 2020/3/16 11:19 本科      30000  本科 30000本科\n",
       "136 2020/3/16 09:49 本科      12500  本科 12500本科"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "rbind(df,df[8,])"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 40.查看每列的数据类型"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 47,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Classes ‘tbl_df’, ‘tbl’ and 'data.frame':\t135 obs. of  5 variables:\n",
      " $ ﻿createTime: chr  \"2020/3/16 11:30\" \"2020/3/16 10:58\" \"2020/3/16 10:46\" \"2020/3/16 10:45\" ...\n",
      " $ education : chr  \"本科\" \"本科\" \"不限\" \"本科\" ...\n",
      " $ salary    : num  27500 30000 27500 16500 15000 14000 23000 12500 7000 16000 ...\n",
      " $ test      : chr  \"本科\" \"本科\" \"不限\" \"本科\" ...\n",
      " $ test1     : chr  \"27500本科\" \"30000本科\" \"27500不限\" \"16500本科\" ...\n"
     ]
    }
   ],
   "source": [
    "str(df)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 41.将createTime列设置为索引"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "df %>%\n",
    "  tibble::column_to_rownames('createTime')"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "collapsed": true,
    "deletable": true,
    "editable": true
   },
   "source": [
    "### 42.生成一个和df长度相同的随机数dataframe"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 51,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "df1 <- sapply(135,function(n) {\n",
    "  replicate(n,sample(1:10,1))\n",
    "})\n",
    "# 列名暂时不一样，下一题重命名"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 43.将上一题生成的dataframe与df合并"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 52,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "df <- cbind(df,df1) %>%\n",
    "  rename(`0` = df1)\n",
    "# 非常规命名需要用``包裹变量名"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 44.生成新的一列new为salary列减去之前生成随机数列"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 53,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "df <- df %>%\n",
    "  mutate(new = salary - `0`)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 45.检查数据中是否含有任何缺失值"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 54,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\n",
      "Attaching package: ‘mice’\n",
      "\n",
      "The following object is masked from ‘package:RCurl’:\n",
      "\n",
      "    complete\n",
      "\n",
      "Warning message in data.matrix(x):\n",
      "“NAs introduced by coercion”Warning message in data.matrix(x):\n",
      "“NAs introduced by coercion”Warning message in data.matrix(x):\n",
      "“NAs introduced by coercion”Warning message in data.matrix(x):\n",
      "“NAs introduced by coercion”"
     ]
    },
    {
     "data": {
      "text/html": [
       "<table>\n",
       "<thead><tr><th scope=col>salary</th><th scope=col>0</th><th scope=col>new</th><th scope=col>﻿createTime</th><th scope=col>education</th><th scope=col>test</th><th scope=col>test1</th><th scope=col></th></tr></thead>\n",
       "<tbody>\n",
       "\t<tr><td>1  </td><td>1  </td><td>1  </td><td>  0</td><td>  0</td><td>  0</td><td>  0</td><td>  4</td></tr>\n",
       "\t<tr><td>0  </td><td>0  </td><td>0  </td><td>135</td><td>135</td><td>135</td><td>135</td><td>540</td></tr>\n",
       "</tbody>\n",
       "</table>\n"
      ],
      "text/latex": [
       "\\begin{tabular}{llllllll}\n",
       " salary & 0 & new & ﻿createTime & education & test & test1 & \\\\\n",
       "\\hline\n",
       "\t 1   & 1   & 1   &   0 &   0 &   0 &   0 &   4\\\\\n",
       "\t 0   & 0   & 0   & 135 & 135 & 135 & 135 & 540\\\\\n",
       "\\end{tabular}\n"
      ],
      "text/markdown": [
       "\n",
       "salary | 0 | new | ﻿createTime | education | test | test1 |  | \n",
       "|---|---|\n",
       "| 1   | 1   | 1   |   0 |   0 |   0 |   0 |   4 | \n",
       "| 0   | 0   | 0   | 135 | 135 | 135 | 135 | 540 | \n",
       "\n",
       "\n"
      ],
      "text/plain": [
       "     salary 0 new ﻿createTime education test test1    \n",
       "[1,] 1      1 1     0          0         0    0     4\n",
       "[2,] 0      0 0   135        135       135  135   540"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# 这个包的结果呈现非常有趣\n",
    "library(mice)\n",
    "md.pattern(df)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 46.将salary列类型转换为浮点数"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 56,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<ol class=list-inline>\n",
       "\t<li>27500</li>\n",
       "\t<li>30000</li>\n",
       "\t<li>27500</li>\n",
       "\t<li>16500</li>\n",
       "\t<li>15000</li>\n",
       "\t<li>14000</li>\n",
       "\t<li>23000</li>\n",
       "\t<li>12500</li>\n",
       "\t<li>7000</li>\n",
       "\t<li>16000</li>\n",
       "\t<li>20000</li>\n",
       "\t<li>10000</li>\n",
       "\t<li>30000</li>\n",
       "\t<li>25000</li>\n",
       "\t<li>30000</li>\n",
       "\t<li>12500</li>\n",
       "\t<li>37500</li>\n",
       "\t<li>12500</li>\n",
       "\t<li>35000</li>\n",
       "\t<li>20000</li>\n",
       "\t<li>11500</li>\n",
       "\t<li>30000</li>\n",
       "\t<li>20000</li>\n",
       "\t<li>22500</li>\n",
       "\t<li>17500</li>\n",
       "\t<li>15000</li>\n",
       "\t<li>30000</li>\n",
       "\t<li>30000</li>\n",
       "\t<li>20000</li>\n",
       "\t<li>17500</li>\n",
       "\t<li>22500</li>\n",
       "\t<li>22500</li>\n",
       "\t<li>22500</li>\n",
       "\t<li>30000</li>\n",
       "\t<li>24000</li>\n",
       "\t<li>16000</li>\n",
       "\t<li>22500</li>\n",
       "\t<li>40000</li>\n",
       "\t<li>30000</li>\n",
       "\t<li>30000</li>\n",
       "\t<li>20000</li>\n",
       "\t<li>30000</li>\n",
       "\t<li>12500</li>\n",
       "\t<li>30000</li>\n",
       "\t<li>12000</li>\n",
       "\t<li>30000</li>\n",
       "\t<li>11500</li>\n",
       "\t<li>17500</li>\n",
       "\t<li>16000</li>\n",
       "\t<li>12500</li>\n",
       "\t<li>13500</li>\n",
       "\t<li>15000</li>\n",
       "\t<li>16500</li>\n",
       "\t<li>45000</li>\n",
       "\t<li>15000</li>\n",
       "\t<li>25000</li>\n",
       "\t<li>22500</li>\n",
       "\t<li>20000</li>\n",
       "\t<li>9500</li>\n",
       "\t<li>22500</li>\n",
       "\t<li>9500</li>\n",
       "\t<li>17500</li>\n",
       "\t<li>35000</li>\n",
       "\t<li>25000</li>\n",
       "\t<li>12000</li>\n",
       "\t<li>18000</li>\n",
       "\t<li>27500</li>\n",
       "\t<li>14000</li>\n",
       "\t<li>17500</li>\n",
       "\t<li>15000</li>\n",
       "\t<li>12000</li>\n",
       "\t<li>6500</li>\n",
       "\t<li>14000</li>\n",
       "\t<li>14000</li>\n",
       "\t<li>20000</li>\n",
       "\t<li>25000</li>\n",
       "\t<li>14000</li>\n",
       "\t<li>6500</li>\n",
       "\t<li>15000</li>\n",
       "\t<li>32500</li>\n",
       "\t<li>17500</li>\n",
       "\t<li>16000</li>\n",
       "\t<li>5000</li>\n",
       "\t<li>30000</li>\n",
       "\t<li>14000</li>\n",
       "\t<li>15000</li>\n",
       "\t<li>20000</li>\n",
       "\t<li>15000</li>\n",
       "\t<li>15000</li>\n",
       "\t<li>11000</li>\n",
       "\t<li>15000</li>\n",
       "\t<li>14000</li>\n",
       "\t<li>35000</li>\n",
       "\t<li>30000</li>\n",
       "\t<li>15000</li>\n",
       "\t<li>21500</li>\n",
       "\t<li>3500</li>\n",
       "\t<li>30000</li>\n",
       "\t<li>14000</li>\n",
       "\t<li>14000</li>\n",
       "\t<li>20000</li>\n",
       "\t<li>37500</li>\n",
       "\t<li>15000</li>\n",
       "\t<li>16000</li>\n",
       "\t<li>5000</li>\n",
       "\t<li>21500</li>\n",
       "\t<li>15000</li>\n",
       "\t<li>16000</li>\n",
       "\t<li>12500</li>\n",
       "\t<li>5000</li>\n",
       "\t<li>4000</li>\n",
       "\t<li>16000</li>\n",
       "\t<li>26500</li>\n",
       "\t<li>3500</li>\n",
       "\t<li>14000</li>\n",
       "\t<li>8500</li>\n",
       "\t<li>20000</li>\n",
       "\t<li>30000</li>\n",
       "\t<li>30000</li>\n",
       "\t<li>18500</li>\n",
       "\t<li>11500</li>\n",
       "\t<li>5000</li>\n",
       "\t<li>16000</li>\n",
       "\t<li>4500</li>\n",
       "\t<li>20000</li>\n",
       "\t<li>12500</li>\n",
       "\t<li>4000</li>\n",
       "\t<li>12500</li>\n",
       "\t<li>22500</li>\n",
       "\t<li>20000</li>\n",
       "\t<li>14000</li>\n",
       "\t<li>37500</li>\n",
       "\t<li>30000</li>\n",
       "\t<li>19000</li>\n",
       "\t<li>30000</li>\n",
       "</ol>\n"
      ],
      "text/latex": [
       "\\begin{enumerate*}\n",
       "\\item 27500\n",
       "\\item 30000\n",
       "\\item 27500\n",
       "\\item 16500\n",
       "\\item 15000\n",
       "\\item 14000\n",
       "\\item 23000\n",
       "\\item 12500\n",
       "\\item 7000\n",
       "\\item 16000\n",
       "\\item 20000\n",
       "\\item 10000\n",
       "\\item 30000\n",
       "\\item 25000\n",
       "\\item 30000\n",
       "\\item 12500\n",
       "\\item 37500\n",
       "\\item 12500\n",
       "\\item 35000\n",
       "\\item 20000\n",
       "\\item 11500\n",
       "\\item 30000\n",
       "\\item 20000\n",
       "\\item 22500\n",
       "\\item 17500\n",
       "\\item 15000\n",
       "\\item 30000\n",
       "\\item 30000\n",
       "\\item 20000\n",
       "\\item 17500\n",
       "\\item 22500\n",
       "\\item 22500\n",
       "\\item 22500\n",
       "\\item 30000\n",
       "\\item 24000\n",
       "\\item 16000\n",
       "\\item 22500\n",
       "\\item 40000\n",
       "\\item 30000\n",
       "\\item 30000\n",
       "\\item 20000\n",
       "\\item 30000\n",
       "\\item 12500\n",
       "\\item 30000\n",
       "\\item 12000\n",
       "\\item 30000\n",
       "\\item 11500\n",
       "\\item 17500\n",
       "\\item 16000\n",
       "\\item 12500\n",
       "\\item 13500\n",
       "\\item 15000\n",
       "\\item 16500\n",
       "\\item 45000\n",
       "\\item 15000\n",
       "\\item 25000\n",
       "\\item 22500\n",
       "\\item 20000\n",
       "\\item 9500\n",
       "\\item 22500\n",
       "\\item 9500\n",
       "\\item 17500\n",
       "\\item 35000\n",
       "\\item 25000\n",
       "\\item 12000\n",
       "\\item 18000\n",
       "\\item 27500\n",
       "\\item 14000\n",
       "\\item 17500\n",
       "\\item 15000\n",
       "\\item 12000\n",
       "\\item 6500\n",
       "\\item 14000\n",
       "\\item 14000\n",
       "\\item 20000\n",
       "\\item 25000\n",
       "\\item 14000\n",
       "\\item 6500\n",
       "\\item 15000\n",
       "\\item 32500\n",
       "\\item 17500\n",
       "\\item 16000\n",
       "\\item 5000\n",
       "\\item 30000\n",
       "\\item 14000\n",
       "\\item 15000\n",
       "\\item 20000\n",
       "\\item 15000\n",
       "\\item 15000\n",
       "\\item 11000\n",
       "\\item 15000\n",
       "\\item 14000\n",
       "\\item 35000\n",
       "\\item 30000\n",
       "\\item 15000\n",
       "\\item 21500\n",
       "\\item 3500\n",
       "\\item 30000\n",
       "\\item 14000\n",
       "\\item 14000\n",
       "\\item 20000\n",
       "\\item 37500\n",
       "\\item 15000\n",
       "\\item 16000\n",
       "\\item 5000\n",
       "\\item 21500\n",
       "\\item 15000\n",
       "\\item 16000\n",
       "\\item 12500\n",
       "\\item 5000\n",
       "\\item 4000\n",
       "\\item 16000\n",
       "\\item 26500\n",
       "\\item 3500\n",
       "\\item 14000\n",
       "\\item 8500\n",
       "\\item 20000\n",
       "\\item 30000\n",
       "\\item 30000\n",
       "\\item 18500\n",
       "\\item 11500\n",
       "\\item 5000\n",
       "\\item 16000\n",
       "\\item 4500\n",
       "\\item 20000\n",
       "\\item 12500\n",
       "\\item 4000\n",
       "\\item 12500\n",
       "\\item 22500\n",
       "\\item 20000\n",
       "\\item 14000\n",
       "\\item 37500\n",
       "\\item 30000\n",
       "\\item 19000\n",
       "\\item 30000\n",
       "\\end{enumerate*}\n"
      ],
      "text/markdown": [
       "1. 27500\n",
       "2. 30000\n",
       "3. 27500\n",
       "4. 16500\n",
       "5. 15000\n",
       "6. 14000\n",
       "7. 23000\n",
       "8. 12500\n",
       "9. 7000\n",
       "10. 16000\n",
       "11. 20000\n",
       "12. 10000\n",
       "13. 30000\n",
       "14. 25000\n",
       "15. 30000\n",
       "16. 12500\n",
       "17. 37500\n",
       "18. 12500\n",
       "19. 35000\n",
       "20. 20000\n",
       "21. 11500\n",
       "22. 30000\n",
       "23. 20000\n",
       "24. 22500\n",
       "25. 17500\n",
       "26. 15000\n",
       "27. 30000\n",
       "28. 30000\n",
       "29. 20000\n",
       "30. 17500\n",
       "31. 22500\n",
       "32. 22500\n",
       "33. 22500\n",
       "34. 30000\n",
       "35. 24000\n",
       "36. 16000\n",
       "37. 22500\n",
       "38. 40000\n",
       "39. 30000\n",
       "40. 30000\n",
       "41. 20000\n",
       "42. 30000\n",
       "43. 12500\n",
       "44. 30000\n",
       "45. 12000\n",
       "46. 30000\n",
       "47. 11500\n",
       "48. 17500\n",
       "49. 16000\n",
       "50. 12500\n",
       "51. 13500\n",
       "52. 15000\n",
       "53. 16500\n",
       "54. 45000\n",
       "55. 15000\n",
       "56. 25000\n",
       "57. 22500\n",
       "58. 20000\n",
       "59. 9500\n",
       "60. 22500\n",
       "61. 9500\n",
       "62. 17500\n",
       "63. 35000\n",
       "64. 25000\n",
       "65. 12000\n",
       "66. 18000\n",
       "67. 27500\n",
       "68. 14000\n",
       "69. 17500\n",
       "70. 15000\n",
       "71. 12000\n",
       "72. 6500\n",
       "73. 14000\n",
       "74. 14000\n",
       "75. 20000\n",
       "76. 25000\n",
       "77. 14000\n",
       "78. 6500\n",
       "79. 15000\n",
       "80. 32500\n",
       "81. 17500\n",
       "82. 16000\n",
       "83. 5000\n",
       "84. 30000\n",
       "85. 14000\n",
       "86. 15000\n",
       "87. 20000\n",
       "88. 15000\n",
       "89. 15000\n",
       "90. 11000\n",
       "91. 15000\n",
       "92. 14000\n",
       "93. 35000\n",
       "94. 30000\n",
       "95. 15000\n",
       "96. 21500\n",
       "97. 3500\n",
       "98. 30000\n",
       "99. 14000\n",
       "100. 14000\n",
       "101. 20000\n",
       "102. 37500\n",
       "103. 15000\n",
       "104. 16000\n",
       "105. 5000\n",
       "106. 21500\n",
       "107. 15000\n",
       "108. 16000\n",
       "109. 12500\n",
       "110. 5000\n",
       "111. 4000\n",
       "112. 16000\n",
       "113. 26500\n",
       "114. 3500\n",
       "115. 14000\n",
       "116. 8500\n",
       "117. 20000\n",
       "118. 30000\n",
       "119. 30000\n",
       "120. 18500\n",
       "121. 11500\n",
       "122. 5000\n",
       "123. 16000\n",
       "124. 4500\n",
       "125. 20000\n",
       "126. 12500\n",
       "127. 4000\n",
       "128. 12500\n",
       "129. 22500\n",
       "130. 20000\n",
       "131. 14000\n",
       "132. 37500\n",
       "133. 30000\n",
       "134. 19000\n",
       "135. 30000\n",
       "\n",
       "\n"
      ],
      "text/plain": [
       "  [1] 27500 30000 27500 16500 15000 14000 23000 12500  7000 16000 20000 10000\n",
       " [13] 30000 25000 30000 12500 37500 12500 35000 20000 11500 30000 20000 22500\n",
       " [25] 17500 15000 30000 30000 20000 17500 22500 22500 22500 30000 24000 16000\n",
       " [37] 22500 40000 30000 30000 20000 30000 12500 30000 12000 30000 11500 17500\n",
       " [49] 16000 12500 13500 15000 16500 45000 15000 25000 22500 20000  9500 22500\n",
       " [61]  9500 17500 35000 25000 12000 18000 27500 14000 17500 15000 12000  6500\n",
       " [73] 14000 14000 20000 25000 14000  6500 15000 32500 17500 16000  5000 30000\n",
       " [85] 14000 15000 20000 15000 15000 11000 15000 14000 35000 30000 15000 21500\n",
       " [97]  3500 30000 14000 14000 20000 37500 15000 16000  5000 21500 15000 16000\n",
       "[109] 12500  5000  4000 16000 26500  3500 14000  8500 20000 30000 30000 18500\n",
       "[121] 11500  5000 16000  4500 20000 12500  4000 12500 22500 20000 14000 37500\n",
       "[133] 30000 19000 30000"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "as.double(df$salary)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 47.计算salary大于10000的次数"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 57,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "119"
      ],
      "text/latex": [
       "119"
      ],
      "text/markdown": [
       "119"
      ],
      "text/plain": [
       "[1] 119"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "df %>%\n",
    "  filter(salary > 10000) %>%\n",
    "  dim(.) %>%\n",
    "  .[1]"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 48.查看每种学历出现的次数"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 58,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "\n",
       "不限 大专 本科 硕士 \n",
       "   5    4  119    7 "
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "table(df$education)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 49.查看education列共有几种学历"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 59,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "4"
      ],
      "text/latex": [
       "4"
      ],
      "text/markdown": [
       "4"
      ],
      "text/plain": [
       "[1] 4"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "length(unique(df$education))\n",
    "# [1] 4"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 50.提取salary与new列的和大于60000的最后3行"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 60,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<table>\n",
       "<thead><tr><th></th><th scope=col>﻿createTime</th><th scope=col>education</th><th scope=col>salary</th><th scope=col>test</th><th scope=col>test1</th><th scope=col>0</th><th scope=col>new</th></tr></thead>\n",
       "<tbody>\n",
       "\t<tr><th scope=row>93</th><td>2020/3/16 10:41</td><td>本科           </td><td>35000          </td><td>本科           </td><td>35000本科      </td><td>6              </td><td>34994          </td></tr>\n",
       "\t<tr><th scope=row>102</th><td>2020/3/16 11:01</td><td>本科           </td><td>37500          </td><td>本科           </td><td>37500本科      </td><td>3              </td><td>37497          </td></tr>\n",
       "\t<tr><th scope=row>132</th><td>2020/3/16 09:54</td><td>硕士           </td><td>37500          </td><td>硕士           </td><td>37500硕士      </td><td>5              </td><td>37495          </td></tr>\n",
       "</tbody>\n",
       "</table>\n"
      ],
      "text/latex": [
       "\\begin{tabular}{r|lllllll}\n",
       "  & ﻿createTime & education & salary & test & test1 & 0 & new\\\\\n",
       "\\hline\n",
       "\t93 & 2020/3/16 10:41 & 本科            & 35000           & 本科            & 35000本科       & 6               & 34994          \\\\\n",
       "\t102 & 2020/3/16 11:01 & 本科            & 37500           & 本科            & 37500本科       & 3               & 37497          \\\\\n",
       "\t132 & 2020/3/16 09:54 & 硕士            & 37500           & 硕士            & 37500硕士       & 5               & 37495          \\\\\n",
       "\\end{tabular}\n"
      ],
      "text/markdown": [
       "\n",
       "| <!--/--> | ﻿createTime | education | salary | test | test1 | 0 | new | \n",
       "|---|---|---|\n",
       "| 93 | 2020/3/16 10:41 | 本科            | 35000           | 本科            | 35000本科       | 6               | 34994           | \n",
       "| 102 | 2020/3/16 11:01 | 本科            | 37500           | 本科            | 37500本科       | 3               | 37497           | \n",
       "| 132 | 2020/3/16 09:54 | 硕士            | 37500           | 硕士            | 37500硕士       | 5               | 37495           | \n",
       "\n",
       "\n"
      ],
      "text/plain": [
       "    ﻿createTime      education salary test test1     0 new  \n",
       "93  2020/3/16 10:41 本科      35000  本科 35000本科 6 34994\n",
       "102 2020/3/16 11:01 本科      37500  本科 37500本科 3 37497\n",
       "132 2020/3/16 09:54 硕士      37500  硕士 37500硕士 5 37495"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "df[df$salary + df$new > 60000,] %>%\n",
    "  .[nrow(.)-3+1:nrow(.),] %>%\n",
    "  na.omit(.)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "### 第三期｜金融数据处理：51-80"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "collapsed": true,
    "deletable": true,
    "editable": true
   },
   "source": [
    "### 51.读取本地Excel数据"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 61,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Parsed with column specification:\n",
      "cols(\n",
      "  `﻿代码` = col_character(),\n",
      "  简称 = col_character(),\n",
      "  日期 = col_date(format = \"\"),\n",
      "  `前收盘价(元)` = col_double(),\n",
      "  `开盘价(元)` = col_double(),\n",
      "  `最高价(元)` = col_double(),\n",
      "  `最低价(元)` = col_double(),\n",
      "  `收盘价(元)` = col_double(),\n",
      "  `成交量(股)` = col_character(),\n",
      "  `成交金额(元)` = col_character(),\n",
      "  `涨跌(元)` = col_double(),\n",
      "  `涨跌幅(%)` = col_double(),\n",
      "  `均价(元)` = col_character(),\n",
      "  `换手率(%)` = col_character(),\n",
      "  `A股流通市值(元)` = col_double(),\n",
      "  `总市值(元)` = col_double(),\n",
      "  `A股流通股本(股)` = col_double(),\n",
      "  市盈率 = col_double()\n",
      ")\n"
     ]
    }
   ],
   "source": [
    "library(readr)\n",
    "df <- read_csv('600000.SH.csv')"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "collapsed": true,
    "deletable": true,
    "editable": true
   },
   "source": [
    "### 52.查看数据前三行"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 63,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<table>\n",
       "<thead><tr><th scope=col>﻿代码</th><th scope=col>简称</th><th scope=col>日期</th><th scope=col>前收盘价(元)</th><th scope=col>开盘价(元)</th><th scope=col>最高价(元)</th><th scope=col>最低价(元)</th><th scope=col>收盘价(元)</th><th scope=col>成交量(股)</th><th scope=col>成交金额(元)</th><th scope=col>涨跌(元)</th><th scope=col>涨跌幅(%)</th><th scope=col>均价(元)</th><th scope=col>换手率(%)</th><th scope=col>A股流通市值(元)</th><th scope=col>总市值(元)</th><th scope=col>A股流通股本(股)</th><th scope=col>市盈率</th></tr></thead>\n",
       "<tbody>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2016-01-04 </td><td>16.1356    </td><td>16.1444    </td><td>16.1444    </td><td>15.4997    </td><td>15.7205    </td><td>42240610   </td><td>754425783  </td><td>-0.4151    </td><td>-2.5725    </td><td>17.8602    </td><td>0.2264     </td><td>3.32032e+11</td><td>3.32032e+11</td><td>18653471415</td><td>6.5614     </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2016-01-05 </td><td>15.7205    </td><td>15.4644    </td><td>15.9501    </td><td>15.3672    </td><td>15.8618    </td><td>58054793   </td><td>1034181474 </td><td> 0.1413    </td><td> 0.8989    </td><td>17.8139    </td><td>0.3112     </td><td>3.35016e+11</td><td>3.35016e+11</td><td>18653471415</td><td>6.6204     </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2016-01-06 </td><td>15.8618    </td><td>15.8088    </td><td>16.0208    </td><td>15.6234    </td><td>15.9855    </td><td>46772653   </td><td>838667398  </td><td> 0.1236    </td><td> 0.7795    </td><td>17.9307    </td><td>0.2507     </td><td>3.37628e+11</td><td>3.37628e+11</td><td>18653471415</td><td>6.6720     </td></tr>\n",
       "</tbody>\n",
       "</table>\n"
      ],
      "text/latex": [
       "\\begin{tabular}{r|llllllllllllllllll}\n",
       " ﻿代码 & 简称 & 日期 & 前收盘价(元) & 开盘价(元) & 最高价(元) & 最低价(元) & 收盘价(元) & 成交量(股) & 成交金额(元) & 涨跌(元) & 涨跌幅(\\%) & 均价(元) & 换手率(\\%) & A股流通市值(元) & 总市值(元) & A股流通股本(股) & 市盈率\\\\\n",
       "\\hline\n",
       "\t 600000.SH   & 浦发银行    & 2016-01-04  & 16.1356     & 16.1444     & 16.1444     & 15.4997     & 15.7205     & 42240610    & 754425783   & -0.4151     & -2.5725     & 17.8602     & 0.2264      & 3.32032e+11 & 3.32032e+11 & 18653471415 & 6.5614     \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2016-01-05  & 15.7205     & 15.4644     & 15.9501     & 15.3672     & 15.8618     & 58054793    & 1034181474  &  0.1413     &  0.8989     & 17.8139     & 0.3112      & 3.35016e+11 & 3.35016e+11 & 18653471415 & 6.6204     \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2016-01-06  & 15.8618     & 15.8088     & 16.0208     & 15.6234     & 15.9855     & 46772653    & 838667398   &  0.1236     &  0.7795     & 17.9307     & 0.2507      & 3.37628e+11 & 3.37628e+11 & 18653471415 & 6.6720     \\\\\n",
       "\\end{tabular}\n"
      ],
      "text/markdown": [
       "\n",
       "﻿代码 | 简称 | 日期 | 前收盘价(元) | 开盘价(元) | 最高价(元) | 最低价(元) | 收盘价(元) | 成交量(股) | 成交金额(元) | 涨跌(元) | 涨跌幅(%) | 均价(元) | 换手率(%) | A股流通市值(元) | 总市值(元) | A股流通股本(股) | 市盈率 | \n",
       "|---|---|---|\n",
       "| 600000.SH   | 浦发银行    | 2016-01-04  | 16.1356     | 16.1444     | 16.1444     | 15.4997     | 15.7205     | 42240610    | 754425783   | -0.4151     | -2.5725     | 17.8602     | 0.2264      | 3.32032e+11 | 3.32032e+11 | 18653471415 | 6.5614      | \n",
       "| 600000.SH   | 浦发银行    | 2016-01-05  | 15.7205     | 15.4644     | 15.9501     | 15.3672     | 15.8618     | 58054793    | 1034181474  |  0.1413     |  0.8989     | 17.8139     | 0.3112      | 3.35016e+11 | 3.35016e+11 | 18653471415 | 6.6204      | \n",
       "| 600000.SH   | 浦发银行    | 2016-01-06  | 15.8618     | 15.8088     | 16.0208     | 15.6234     | 15.9855     | 46772653    | 838667398   |  0.1236     |  0.7795     | 17.9307     | 0.2507      | 3.37628e+11 | 3.37628e+11 | 18653471415 | 6.6720      | \n",
       "\n",
       "\n"
      ],
      "text/plain": [
       "  ﻿代码      简称     日期       前收盘价(元) 开盘价(元) 最高价(元) 最低价(元)\n",
       "1 600000.SH 浦发银行 2016-01-04 16.1356      16.1444    16.1444    15.4997   \n",
       "2 600000.SH 浦发银行 2016-01-05 15.7205      15.4644    15.9501    15.3672   \n",
       "3 600000.SH 浦发银行 2016-01-06 15.8618      15.8088    16.0208    15.6234   \n",
       "  收盘价(元) 成交量(股) 成交金额(元) 涨跌(元) 涨跌幅(%) 均价(元) 换手率(%)\n",
       "1 15.7205    42240610   754425783    -0.4151  -2.5725   17.8602  0.2264   \n",
       "2 15.8618    58054793   1034181474    0.1413   0.8989   17.8139  0.3112   \n",
       "3 15.9855    46772653   838667398     0.1236   0.7795   17.9307  0.2507   \n",
       "  A股流通市值(元) 总市值(元)  A股流通股本(股) 市盈率\n",
       "1 3.32032e+11     3.32032e+11 18653471415     6.5614\n",
       "2 3.35016e+11     3.35016e+11 18653471415     6.6204\n",
       "3 3.37628e+11     3.37628e+11 18653471415     6.6720"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "head(df,3)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 53.查看每列数据缺失值情况"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 64,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<dl class=dl-horizontal>\n",
       "\t<dt>﻿代码</dt>\n",
       "\t\t<dd>1</dd>\n",
       "\t<dt>简称</dt>\n",
       "\t\t<dd>2</dd>\n",
       "\t<dt>日期</dt>\n",
       "\t\t<dd>2</dd>\n",
       "\t<dt>前收盘价(元)</dt>\n",
       "\t\t<dd>2</dd>\n",
       "\t<dt>开盘价(元)</dt>\n",
       "\t\t<dd>2</dd>\n",
       "\t<dt>最高价(元)</dt>\n",
       "\t\t<dd>2</dd>\n",
       "\t<dt>最低价(元)</dt>\n",
       "\t\t<dd>2</dd>\n",
       "\t<dt>收盘价(元)</dt>\n",
       "\t\t<dd>2</dd>\n",
       "\t<dt>成交量(股)</dt>\n",
       "\t\t<dd>2</dd>\n",
       "\t<dt>成交金额(元)</dt>\n",
       "\t\t<dd>2</dd>\n",
       "\t<dt>涨跌(元)</dt>\n",
       "\t\t<dd>2</dd>\n",
       "\t<dt>涨跌幅(%)</dt>\n",
       "\t\t<dd>2</dd>\n",
       "\t<dt>均价(元)</dt>\n",
       "\t\t<dd>2</dd>\n",
       "\t<dt>换手率(%)</dt>\n",
       "\t\t<dd>2</dd>\n",
       "\t<dt>A股流通市值(元)</dt>\n",
       "\t\t<dd>2</dd>\n",
       "\t<dt>总市值(元)</dt>\n",
       "\t\t<dd>2</dd>\n",
       "\t<dt>A股流通股本(股)</dt>\n",
       "\t\t<dd>2</dd>\n",
       "\t<dt>市盈率</dt>\n",
       "\t\t<dd>2</dd>\n",
       "</dl>\n"
      ],
      "text/latex": [
       "\\begin{description*}\n",
       "\\item[﻿代码] 1\n",
       "\\item[简称] 2\n",
       "\\item[日期] 2\n",
       "\\item[前收盘价(元)] 2\n",
       "\\item[开盘价(元)] 2\n",
       "\\item[最高价(元)] 2\n",
       "\\item[最低价(元)] 2\n",
       "\\item[收盘价(元)] 2\n",
       "\\item[成交量(股)] 2\n",
       "\\item[成交金额(元)] 2\n",
       "\\item[涨跌(元)] 2\n",
       "\\item[涨跌幅(\\textbackslash{}\\%)] 2\n",
       "\\item[均价(元)] 2\n",
       "\\item[换手率(\\textbackslash{}\\%)] 2\n",
       "\\item[A股流通市值(元)] 2\n",
       "\\item[总市值(元)] 2\n",
       "\\item[A股流通股本(股)] 2\n",
       "\\item[市盈率] 2\n",
       "\\end{description*}\n"
      ],
      "text/markdown": [
       "﻿代码\n",
       ":   1简称\n",
       ":   2日期\n",
       ":   2前收盘价(元)\n",
       ":   2开盘价(元)\n",
       ":   2最高价(元)\n",
       ":   2最低价(元)\n",
       ":   2收盘价(元)\n",
       ":   2成交量(股)\n",
       ":   2成交金额(元)\n",
       ":   2涨跌(元)\n",
       ":   2涨跌幅(%)\n",
       ":   2均价(元)\n",
       ":   2换手率(%)\n",
       ":   2A股流通市值(元)\n",
       ":   2总市值(元)\n",
       ":   2A股流通股本(股)\n",
       ":   2市盈率\n",
       ":   2\n",
       "\n"
      ],
      "text/plain": [
       "           ﻿代码            简称            日期    前收盘价(元)      开盘价(元) \n",
       "              1               2               2               2               2 \n",
       "     最高价(元)      最低价(元)      收盘价(元)      成交量(股)    成交金额(元) \n",
       "              2               2               2               2               2 \n",
       "       涨跌(元)       涨跌幅(%)        均价(元)       换手率(%) A股流通市值(元) \n",
       "              2               2               2               2               2 \n",
       "     总市值(元) A股流通股本(股)          市盈率 \n",
       "              2               2               2 "
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "colSums(is.na(df))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 54.提取日期列含有空值的行"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 65,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<table>\n",
       "<thead><tr><th scope=col>﻿代码</th><th scope=col>简称</th><th scope=col>日期</th><th scope=col>前收盘价(元)</th><th scope=col>开盘价(元)</th><th scope=col>最高价(元)</th><th scope=col>最低价(元)</th><th scope=col>收盘价(元)</th><th scope=col>成交量(股)</th><th scope=col>成交金额(元)</th><th scope=col>涨跌(元)</th><th scope=col>涨跌幅(%)</th><th scope=col>均价(元)</th><th scope=col>换手率(%)</th><th scope=col>A股流通市值(元)</th><th scope=col>总市值(元)</th><th scope=col>A股流通股本(股)</th><th scope=col>市盈率</th></tr></thead>\n",
       "<tbody>\n",
       "\t<tr><td>NA                </td><td>NA                </td><td>NA                </td><td>NA                </td><td>NA                </td><td>NA                </td><td>NA                </td><td>NA                </td><td>NA                </td><td>NA                </td><td>NA                </td><td>NA                </td><td>NA                </td><td>NA                </td><td>NA                </td><td>NA                </td><td>NA                </td><td>NA                </td></tr>\n",
       "\t<tr><td>数据来源：Wind资讯</td><td>NA                </td><td>NA                </td><td>NA                </td><td>NA                </td><td>NA                </td><td>NA                </td><td>NA                </td><td>NA                </td><td>NA                </td><td>NA                </td><td>NA                </td><td>NA                </td><td>NA                </td><td>NA                </td><td>NA                </td><td>NA                </td><td>NA                </td></tr>\n",
       "</tbody>\n",
       "</table>\n"
      ],
      "text/latex": [
       "\\begin{tabular}{r|llllllllllllllllll}\n",
       " ﻿代码 & 简称 & 日期 & 前收盘价(元) & 开盘价(元) & 最高价(元) & 最低价(元) & 收盘价(元) & 成交量(股) & 成交金额(元) & 涨跌(元) & 涨跌幅(\\%) & 均价(元) & 换手率(\\%) & A股流通市值(元) & 总市值(元) & A股流通股本(股) & 市盈率\\\\\n",
       "\\hline\n",
       "\t NA                 & NA                 & NA                 & NA                 & NA                 & NA                 & NA                 & NA                 & NA                 & NA                 & NA                 & NA                 & NA                 & NA                 & NA                 & NA                 & NA                 & NA                \\\\\n",
       "\t 数据来源：Wind资讯 & NA                 & NA                 & NA                 & NA                 & NA                 & NA                 & NA                 & NA                 & NA                 & NA                 & NA                 & NA                 & NA                 & NA                 & NA                 & NA                 & NA                \\\\\n",
       "\\end{tabular}\n"
      ],
      "text/markdown": [
       "\n",
       "﻿代码 | 简称 | 日期 | 前收盘价(元) | 开盘价(元) | 最高价(元) | 最低价(元) | 收盘价(元) | 成交量(股) | 成交金额(元) | 涨跌(元) | 涨跌幅(%) | 均价(元) | 换手率(%) | A股流通市值(元) | 总市值(元) | A股流通股本(股) | 市盈率 | \n",
       "|---|---|\n",
       "| NA                 | NA                 | NA                 | NA                 | NA                 | NA                 | NA                 | NA                 | NA                 | NA                 | NA                 | NA                 | NA                 | NA                 | NA                 | NA                 | NA                 | NA                 | \n",
       "| 数据来源：Wind资讯 | NA                 | NA                 | NA                 | NA                 | NA                 | NA                 | NA                 | NA                 | NA                 | NA                 | NA                 | NA                 | NA                 | NA                 | NA                 | NA                 | NA                 | \n",
       "\n",
       "\n"
      ],
      "text/plain": [
       "  ﻿代码               简称 日期 前收盘价(元) 开盘价(元) 最高价(元) 最低价(元)\n",
       "1 NA                 NA   <NA> NA           NA         NA         NA        \n",
       "2 数据来源：Wind资讯 NA   <NA> NA           NA         NA         NA        \n",
       "  收盘价(元) 成交量(股) 成交金额(元) 涨跌(元) 涨跌幅(%) 均价(元) 换手率(%)\n",
       "1 NA         NA         NA           NA       NA        NA       NA       \n",
       "2 NA         NA         NA           NA       NA        NA       NA       \n",
       "  A股流通市值(元) 总市值(元) A股流通股本(股) 市盈率\n",
       "1 NA              NA         NA              NA    \n",
       "2 NA              NA         NA              NA    "
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "df[is.na(df$日期),]"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 55.输出每列缺失值具体行数"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "library(glue)\n",
    "\n",
    "for (i in names(df)){\n",
    "  if(sum(is.na(df[,'日期'])) != 0){\n",
    "    res1 <- which(is.na(df[,i]))\n",
    "    res2 <- paste(res1,collapse = ',')\n",
    "    print(glue('列名：\"{i}\", 第[{res2}]行有缺失值'))\n",
    "  }\n",
    "}"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "collapsed": true,
    "deletable": true,
    "editable": true
   },
   "source": [
    "### 56.删除所有存在缺失值的行"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 67,
   "metadata": {
    "collapsed": true,
    "deletable": true,
    "editable": true
   },
   "outputs": [],
   "source": [
    "df <- na.omit(df)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 57.绘制收盘价的折线图"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 68,
   "metadata": {
    "collapsed": false,
    "scrolled": true
   },
   "outputs": [
    {
     "data": {},
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "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\ndwAAAABJRU5ErkJggg==",
      "text/plain": [
       "plot without title"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "library(ggplot2)\n",
    "\n",
    "df %>%\n",
    "  ggplot(aes(日期,`收盘价(元)`)) +\n",
    "  geom_line()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 58.同时绘制开盘价与收盘价"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 70,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {},
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "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\ngg==",
      "text/plain": [
       "plot without title"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "df %>%\n",
    "  ggplot() +\n",
    "  geom_line(aes(日期,`收盘价(元)`), size=1.2, color='steelblue') +\n",
    "  geom_line(aes(日期,`开盘价(元)`), size=1.2, color='orange') +\n",
    "  ylab(c('价格(元)'))\n",
    "# 这种画出来没有图例，当然可以手动添加，但为了映射方便可以用另一种方法"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "### 方法二\n",
    "library(tidyr)\n",
    "\n",
    "df %>%\n",
    "  select(日期,`开盘价(元)`,`收盘价(元)`) %>%\n",
    "  pivot_longer(c(`开盘价(元)`,`收盘价(元)`),\n",
    "               names_to='type',values_to='price') %>%\n",
    "  ggplot(aes(日期,price,color=type)) +\n",
    "  geom_line(size=1.2) +\n",
    "  scale_color_manual(values=c('steelblue','orange')) +\n",
    "  theme_bw() +\n",
    "  theme(\n",
    "    panel.grid.major = element_blank(),\n",
    "    panel.grid.minor = element_blank(),\n",
    "    legend.title = element_blank(),\n",
    "    legend.position = c(0.86, 0.9)\n",
    "  )"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 59.绘制涨跌幅的直方图"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 71,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "`stat_bin()` using `bins = 30`. Pick better value with `binwidth`.\n"
     ]
    },
    {
     "data": {},
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAA0gAAANICAIAAAByhViMAAAABmJLR0QA/wD/AP+gvaeTAAAg\nAElEQVR4nO3deWCcdZ348e8cuabpkaaAB6hd7QpbabcKteD1+4mI7koBu6jUC0HLHRdFRMuh\ndEVBQC2HisAqKLCuBxQVURR116WgwE+BFVsQOVZEC6RpmqPJZH5/DFsrTdKUtvNkPnm9/srM\nk8zzybfTJ+88k5nJVSqVBABA/ctnPQAAANuHsAMACELYAQAEIewAAIIQdgAAQQg7AIAghB0A\nQBDCDgAgiGLWA4xVb29vX19f7fc7ZcqUXC7X29u7YcOG2u99/JsyZcr69evL5XLWg4w7+Xx+\n8uTJKaXu7m7rs7nq+nR1dXmN9M01NDSUSqWUkvUZVrFYbGlpWbduXdaDjEdNTU3Nzc1DQ0PW\nZ1hNTU2FQqGnpyfrQbZVW1vbSJvqJuwqlUomPx3z+Xwul8tq7+NfPp+3OCPJ5/Mpu7vu+JfP\n58vlsnDZXKFQqN55rM+wquvjv9VINt55sh5knMrlcrEXx0OxAABBCDsAgCCEHQBAEMIOACAI\nYQcAEISwAwAIQtgBAAQh7AAAghB2AABBCDsAgCCEHQBAEMIOACAIYQcAEISwAwAIQtgBAAQh\n7AAAghB2AABBCDsAgCCEHQBAEMIOACAIYQcAEISwAwAIQtgBAAQh7AAAghB2AABBCDsAgCCE\nHQBAEMIOACAIYQcAEISwAwAIQtgBAAQh7AAAghB2AABBFLMeAGDC6ejo2C63s3z58u1yO0AY\nztgBAAQh7AAAghB2AABBCDsAgCCEHQBAEMIOACAIYQcAEISwAwAIQtgBAAQh7AAAghB2AABB\nCDsAgCCEHQBAEMIOACAIYQcAEISwAwAIQtgBAAQh7AAAghB2AABBCDsAgCCEHQBAEMIOACAI\nYQcAEISwAwAIQtgBAAQh7AAAghB2AABBCDsAgCCEHQBAEMIOACCIYtYDjFWhUJg0aVLt95vL\n5VJKTU1NhUKh9nsf/3K5XHNzc2NjY9aDjDvVe05KyfoMq7o+pVIp60HqWyZHxcwVCoVcLjcx\nv/ctKhaLKSXrM5JisZjP5+t9cYaGhkbZWjdhl1LK5zM7v5jL5TLc+zhnZYa1Meysz7Cq62Nx\nttHEXEB3nlE48owul8sF+IG+8V95WHUTduVyuaenp/b7bWxszOVyfX19fX19td/7+NfY2NjT\n0zMwMJD1IONOoVConqizPsOqrk93d3elUsl6ljq2bt26rEfIQGNjY2tr68T83reoVCoVi8VK\npWJ9hlVdnwCL09zcPNKm+o5WAAA2EnYAAEEIOwCAIIQdAEAQwg4AIAhhBwAQhLADAAhC2AEA\nBCHsAACCEHYAAEEIOwCAIIQdAEAQwg4AIAhhBwAQhLADAAhC2AEABCHsAACCEHYAAEEIOwCA\nIIQdAEAQwg4AIAhhBwAQhLADAAhC2AEABCHsAACCEHYAAEEIOwCAIIQdAEAQwg4AIAhhBwAQ\nhLADAAhC2AEABCHsAACCEHYAAEEIOwCAIIQdAEAQwg4AIAhhBwAQhLADAAhC2AEABCHsAACC\nEHYAAEEIOwCAIIQdAEAQwg4AIAhhBwAQhLADAAhC2AEABCHsAACCEHYAAEEIOwCAIIQdAEAQ\nwg4AIAhhBwAQhLADAAhC2AEABCHsAACCEHYAAEEIOwCAIIQdAEAQwg4AIAhhBwAQhLADAAhC\n2AEABCHsAACCEHYAAEEIOwCAIIQdAEAQwg4AIAhhBwAQhLADAAhC2AEABCHsAACCEHYAAEEI\nOwCAIIQdAEAQwg4AIAhhBwAQhLADAAhC2AEABCHsAACCEHYAAEEIOwCAIIQdAEAQwg4AIAhh\nBwAQhLADAAhC2AEABCHsAACCKNZgH5Xy+u9e/pnrfvbr3qZd5r/h8I5/etnGTXdce+Hl1//X\nE5W2BQce2XHIS2swDABAVLU4Y3f3V5ZefU/LESed+dFj39pz83nn3fKn6vVr7rxg2VX3HnjE\nyScfuXDV1csuuHNNDYYBAIiqFmfsvnDDgydefs5ekxtTSi98Ye7dJ/0o7XNYSumWS1fOO+kz\nB8zfOaV0esOtJ1668oSL3lSDeQAAQqpF2D05OPTspsJT+2t+Xv+TV6Z0WErp5jW9h89uq17f\nNvug3jVXpPSXsOvt7b300ks3XnzZy142b968Gkz7NLlcLqXU1NRUKBRqv/fxL5fLNTc3NzY2\nZj3IuFO956SUrM+wqutTKpWyHqS+TZo0KesRMpDP53O53MT83reoWCymlKzPSIrFYj6fr/fF\nGRoaGmVrLcLusN2nfepLN5zxrv1Lg49/77Kzhgaeeij2kf7yzOanBig2zyz3P7LpV/X19X3l\nK1/ZeLGpqWnfffetwbTDamhoaGhoyGrv41xTU1PWI4xr1mcULS0tWY9Q3ybyAk7k732Lcrmc\n9RlFvS9OuVweZWstwu6Np3303tM/ecTbL8nlW179jmPSz79Yvb7y9E/8q0ELhcIee+yx8WJ7\ne/vg4OAOnnQY1d9+hoaGRg/kCatYLJbL5Upls3/MCS+Xy1XP8lqfYVXXJ5P/1JFMzAV05xlF\nPp/P5/Npot43tqh6unf0MBr/hoaGRnkUsRZhVyy9+EPnfvmEtX8uT5rR0Lvylm+9qHr9bk2F\nh/rLs0vFlFK5/+FC426bftWUKVOuvPLKjRd7eno6OztrMO3TtLe353K5np6evr6+2u99/Gtv\nb+/u7h4YGMh6kHGnUCi0tbWllKzPsKrrs3btWtW7LTI5KmausbGxtbV1Yn7vW1QqlUql0tDQ\nkPUZVqlUKhaLXV1dWQ+yrWbMmDHSplo8K/aWi8777p96m6fuNKmY++NPv936/AOq1+83o2XF\n6qfueZ2rV7TstF8NhgEAiKoWYfec5z5+5Wmfu2nlXbfc9I2lX37o0I6nXq9uwZJX3n72p2+7\n54Hf3bXynLNvf9VRmf0JHQBAALV4KPZ5C09/80PLvnL+x0vPffFBpyz/x2c/9Ty49rnHnLZo\n+SXnL+1M0xccesbRc6bXYBgAgKhqEXa5fPNbOj7xlo5hNs1d1HHRouE2AACwlbxXLABAEMIO\nACAIYQcAEISwAwAIQtgBAAQh7AAAghB2AABBCDsAgCCEHQBAEMIOACAIYQcAEISwAwAIQtgB\nAAQh7AAAghB2AABBCDsAgCCEHQBAEMIOACAIYQcAEISwAwAIQtgBAAQh7AAAghB2AABBCDsA\ngCCEHQBAEMIOACAIYQcAEISwAwAIQtgBAAQh7AAAghB2AABBCDsAgCCEHQBAEMIOACAIYQcA\nEISwAwAIQtgBAAQh7AAAghB2AABBCDsAgCCEHQBAEMIOACAIYQcAEISwAwAIQtgBAAQh7AAA\nghB2AABBCDsAgCCEHQBAEMIOACAIYQcAEISwAwAIQtgBAAQh7AAAghB2AABBCDsAgCCEHQBA\nEMIOACAIYQcAEISwAwAIQtgBAAQh7AAAghB2AABBCDsAgCCEHQBAEMIOACAIYQcAEISwAwAI\nQtgBAAQh7AAAghB2AABBCDsAgCCEHQBAEMIOACAIYQcAEISwAwAIQtgBAAQh7AAAghB2AABB\nCDsAgCCEHQBAEMIOACAIYQcAEISwAwAIQtgBAAQh7AAAghB2AABBCDsAgCCKWQ8wVvl8vrm5\nufb7zeVyKaWGhoba77ou5HK5xsbGQqGQ9SDjTj7/1G9N1mdY1fVpbm6uVCpZz1LHMjkqZq5Y\nLOZyuYn5vW9RsVhMKVmfkRSLxUKhUO+LM/phU9iNSUNDg5/NI2lsbPSzeXPVXwmS9RlBdX2a\nmpqyHqS+1fvPp2cml8sJl5FUf2WyPiPJ5/MBFmdoaGiUrXUTdoODgz09PbXfb3t7ey6X6+np\n6evrq/3ex7/29vbu7u6BgYGsBxl3CoVCW1tbSsn6DKu6PmvXrlW926KzszPrETLQ2NjY2to6\nMb/3LSqVSqVSaWhoyPoMq1QqFYvFrq6urAfZVjNmzBhpk7+xAwAIQtgBAAQh7AAAghB2AABB\nCDsAgCCEHQBAEMIOACAIYQcAEISwAwAIQtgBAAQh7AAAghB2AABBCDsAgCCEHQBAEMIOACAI\nYQcAEISwAwAIQtgBAAQh7AAAghB2AABBCDsAgCCEHQBAEMIOACAIYQcAEISwAwAIQtgBAAQh\n7AAAghB2AABBCDsAgCCEHQBAEMIOACAIYQcAEISwAwAIQtgBAAQh7AAAghB2AABBCDsAgCCE\nHQBAEMIOACAIYQcAEISwAwAIQtgBAAQh7AAAghB2AABBCDsAgCCEHQBAEMIOACAIYQcAEISw\nAwAIQtgBAAQh7AAAghB2AABBCDsAgCCEHQBAEMIOACAIYQcAEISwAwAIQtgBAAQh7AAAghB2\nAABBCDsAgCCEHQBAEMIOACAIYQcAEISwAwAIQtgBAAQh7AAAghB2AABBCDsAgCCEHQBAEMIO\nACAIYQcAEISwAwAIQtgBAAQh7AAAghB2AABBCDsAgCCEHQBAEMIOACAIYQcAEISwAwAIopj1\nAAA8Qx0dHdvldpYvX75dbgfInDN2AABBCDsAgCCEHQBAEMIOACAIYQcAEISwAwAIQtgBAARR\no9exe+yX31j+tR/+9n/Wv3Cv/U75wOFtxVz1+juuvfDy6//riUrbggOP7DjkpbUZBgAgpFqc\nsVv/Pyv++fz/fMWb3/fxU47+m7U/OfWS/65ev+bOC5Zdde+BR5x88pELV1297II719RgGACA\nqGpxxu6OC771yqWf+YfZbSml3Wc/7457KtXrb7l05byTPnPA/J1TSqc33HripStPuOhNNZgH\nACCkWoTdDx7sXvj4dz9wzI8eWVeY8+pDPvjef6hef/Oa3sNnt1U/bpt9UO+aK1L6S9ht2LDh\nO9/5zsaLs2bNmjlzZg2mfZpcLpdSamhoqP2u60VjY2OhUMh6inEnn3/qdLj1GVZ1fZqbmyuV\nStazkJqbm7MeYSsUi8VcLldfM9dMsVhMKVmfkRSLxXw+X++LM/phsxZht7pvYPlVv1+y5EPP\naui+9pLPnfb1vz33bbNSSo/0l2c2PzVAsXlmuf+RTb9q/fr1Z5111saLS5Ys2XPPPWsw7bCa\nmpqampqy2vs419LSkvUI45r1GcWkSZOyHoGUUmptbc16hK1WjzPXTC6Xsz6jqPfFKZfLo2yt\nxd/YbRhKi5d98FUv/btZe84/4WPvfuDaL1Wv3yw4RxsUAIDR1eKM3U4N+X2nP3Xas2nagsG+\np8Jut6bCQ/3l2aViSqnc/3ChcbdNv6qtre2Xv/zlxos9PT1r1mTw7Ir29vZcLtfd3d3X11f7\nvY9/7e3tXV1dAwMDWQ8y7hQKhba2tpTS2rVrrc/mquvz+OOPeyh2PMjk6PqMNTY2tra2PvHE\nE1kPMh6VSqVSqTQ0NGR9hlUqlYrFYldXV9aDbKsZM2aMtKkWZ+z+z7SmGx7prn7c89hNDZPm\nVj/eb0bLitWd1Y87V69o2Wm/GgwDABBVLcJuvyP3+uZpZ91066/v+sVPzj71mpe8+z3V6xcs\neeXtZ3/6tnse+N1dK885+/ZXHbVvDYYBAIiqFg/F7rzPSR9++LNfvuTsNYOTX/b64z+w/3Or\n17fPPea0RcsvOX9pZ5q+4NAzjp4zvQbDAABEVaN3ntjrLf+811uGuX7uoo6LFnXUZgYAgNi8\nVywAQBDCDgAgCGEHABCEsAMACGKsYZfL5Y67r3Pz6x/67v6NrXO260gAADwT23bGrjK46s4n\nyn0PbKdhAAB45rYQdhfPmp7L5XK5XErp4lltuafJN+x/2h0Nk/asyagAAIxmW//GrtAw9eDT\nL94uowAAsC228ALFx65+4tiUUkq5XO7Y1U9e9KJpNZgJAIBnYKxn7Ab7H556ysKdJzU8/dHY\n/32gFgCAbI31LcV+8v7Xf/Kbv9mhowAAsC3GesbupK/e3zh5r2/dfv/AUGVzO3REAADGYqxn\n7Fb3Ds5ZdtkhL/2bHToNwHjW0dGR9QgAoxlr2L1qamPfi1p36CgAAGyLsT4Ue9aJe9/1L18c\n9KArAMB4Ndawm7f0hx+a88O9D/vwf9x137r+oR06EwAAz8BYH4rN5ZtTSind+ep/O2fzrZ4/\n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\n3XHthZdf/19PVNoWHHhkxyEvrcEwAABR7fAzdpXyumUfPvfuNOvYD338Yx84cnbLfy875crq\npjV3XrDsqnsPPOLkk49cuOrqZRfcuWZHDwMAENgOP2PX3/mjB1PDR089as6khpTS7nP2+Oah\nx6V0RErplktXzjvpMwfM3zmldHrDrSdeuvKEi960o+cBAIhqh4ddc/vB11xzcEqp948PPfDn\nxx/4xXVTZy2sbrp5Te/hs9uqH7fNPqh3zRUp/SXsyuXyqlWrNl6cPHlya2vrjp52JPl8vlis\nxcPW9ahQKFQqlaynGHfy+adOh1ufYVXXp1gsWpzxoL6Ob4VCIdXbzDWz8chjfYaVz+dzuVy9\nL87oh83afW/3nHfamb99MpdrPOGiD1WveaS/PLP5qQGKzTPL/Y9s+vldXV3vfOc7N15csmTJ\nkiVLajbt05RKpVKplNXex7kMg7suWJ9RTJ06NesRSCmladOmZT3CVqvHmWsmn89bn1HU++KU\ny+VRttbuWbF7ffor37jmin8+9EVfOv2K6jWbBedogwIAMLodfsau59G77/6fhvl7vTil1Fia\n9pq3nvTZbx6f0jEppd2aCg/1l2eXiimlcv/DhcbdNv3CqVOnXnfddRsvNjY2Pvnkkzt62s1N\nmzYtl8v19PT09/fXfu/j37Rp07q7uwcHB7MeZNzJ5/PV01Hr1q2zPpurrk9nZ6eHYseDTI6u\nz1hDQ0OpVFq7dm3Wg4xHzc3NLS0tQ0ND1mdYzc3NxWKxu7s760G2SaVSmT59+khbd3zYPfaN\nsz6x+ivf+OrUQi6lNNj3u3zDTtVN+81oWbG6c/bcGSmlztUrWnbab9MvzOfzz33uc/9yOz09\nPT09O3rakQwNDY1+5nMiszijsz6jKJfLwm48qK+7aPVv7Opr5prZ+B/K+gyrUqlUKpXYi7PD\nH4pt2/1dU3PrP3zulXfc/du77/j5hacvf+GBR1c3LVjyytvP/vRt9zzwu7tWnnP27a86at8d\nPQwAQGA7/Ixdoflvzv/YUZ//+o8+c+aK/JRd5r328H95299VN7XPPea0RcsvOX9pZ5q+4NAz\njp4z4nlFAAC2qBbPim2f88ZT57xx2E1zF3VctKijBjMAAITnvWIBAIIQdgAAQQg7AIAghB0A\nQBDCDgAgCGEHABCEsAMACELYAQAEIewAAIIQdgAAQQg7AIAghB0AQBDCDgAgCGEHABCEsAMA\n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\nLy88tOHRty76/Cnf/Xwpn/vleQfu/94zH9v93Tf+/Mb3zH78E0e94U3n/rL6aZVyT0op5Rtr\nMTQwgXkoFmBEC2eUrn+898edff93atOwn/CD98858t5jHr7xmJTSHpMa7+0Z+HX3hj0nNQys\n/1Vj6983TJq9ofvulFL/2pubp722pf1NPWuur+k3AEwwztgBjOjts6amlG56om/YresevPKQ\nLz521dePqF6sHk//sKGcUhra8OeUUqqUq5v6nvhRSmnqrLfv4HmBiU7YAYxowdK9U0o/WvHI\nMNsqgx9+fce807/7qv89mXfFsgNSSu884OgvX/Xlow5YnFLa/2NXVDc9suKmlNLeS/etydTA\nxOWhWIARlfse2G3qrA2zzl9zd8fTNv32Xw+Z96G+Rx/7XvW1i1NKKVV+eNkZp332a/es+uNO\ns17y9vcvO/N9r69uu+AlM05c3bh67cMzmwu1nB+YaIQdwGj+84NzXv25+37V1bVn6enPjR2j\nwZ67pkyZO+uf/+NX575i+84G8DQeigUYzYJl1+xWHDj+q/c941u472vHDzTsds2ZL9+OUwEM\nyxk7gC144JvH7v6e2//niVtmFLf6l+GhwTX7TH/uXl++96I3z9wRswFsyhk7gC2YuejiKw6f\neeEv/vwMvvbPv7hw5uFXqDqgNpyxAwAIwhk7AIAghB0AQBDCDgAgCGEHABCEsAMACELYAQAE\nIewAAIIQdgAAQQg7AIAghB0AQBDCDgAgCGEHABDE/wehkbLYa17MVgAAAABJRU5ErkJggg==",
      "text/plain": [
       "plot without title"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "df %>%\n",
    "  ggplot(aes(`涨跌幅(%)`)) +\n",
    "  geom_histogram()\n",
    "# 可以指定bins"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 60.让直方图更细致"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 72,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {},
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "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\nO9/5zsaLs2bNmjlzZg2mfZpcLpdSamhoqP2u60VjY2OhUMh6inEnn3/qdLj1GVZ1fZqbmyuV\nStazkJqbm7MeYSsUi8VcLldfM9dMsVhMKVmfkRSLxXw+X++LM/phsxZht7pvYPlVv1+y5EPP\naui+9pLPnfb1vz33bbNSSo/0l2c2PzVAsXlmuf+RTb9q/fr1Z5111saLS5Ys2XPPPWsw7bCa\nmpqampqy2vs419LSkvUI45r1GcWkSZOyHoGUUmptbc16hK1WjzPXTC6Xsz6jqPfFKZfLo2yt\nxd/YbRhKi5d98FUv/btZe84/4WPvfuDaL1Wv3yw4RxsUAIDR1eKM3U4N+X2nP3Xas2nagsG+\np8Jut6bCQ/3l2aViSqnc/3ChcbdNv6qtre2Xv/zlxos9PT1r1mTw7Ir29vZcLtfd3d3X11f7\nvY9/7e3tXV1dAwMDWQ8y7hQKhba2tpTS2rVrrc/mquvz+OOPeyh2PMjk6PqMNTY2tra2PvHE\nE1kPMh6VSqVSqTQ0NGR9hlUqlYrFYldXV9aDbKsZM2aMtKkWZ+z+z7SmGx7prn7c89hNDZPm\nVj/eb0bLitWd1Y87V69o2Wm/GgwDABBVLcJuvyP3+uZpZ91066/v+sVPzj71mpe8+z3V6xcs\neeXtZ3/6tnse+N1dK885+/ZXHbVvDYYBAIiqFg/F7rzPSR9++LNfvuTsNYOTX/b64z+w/3Or\n17fPPea0RcsvOX9pZ5q+4NAzjp4zvQbDAABEVaN3ntjrLf+811uGuX7uoo6LFnXUZgYAgNi8\nVywAQBDCDgAgCGEHABCEsAMACGKsYZfL5Y67r3Pz6x/67v6NrXO260gAADwT23bGrjK46s4n\nyn0PbKdhAAB45rYQdhfPmp7L5XK5XErp4lltuafJN+x/2h0Nk/asyagAAIxmW//GrtAw9eDT\nL94uowAAsC228ALFx65+4tiUUkq5XO7Y1U9e9KJpNZgJAIBnYKxn7Ab7H556ysKdJzU8/dHY\n/32gFgCAbI31LcV+8v7Xf/Kbv9mhowAAsC3GesbupK/e3zh5r2/dfv/AUGVzO3REAADGYqxn\n7Fb3Ds5ZdtkhL/2bHToNwHjW0dGR9QgAoxlr2L1qamPfi1p36CgAAGyLsT4Ue9aJe9/1L18c\n9KArAMB4Ndawm7f0hx+a88O9D/vwf9x137r+oR06EwAAz8BYH4rN5ZtTSind+ep/O2fzrZ4/\n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\n3XHthZdf/19PVNoWHHhkxyEvrcEwAABR7fAzdpXyumUfPvfuNOvYD338Yx84cnbLfy875crq\npjV3XrDsqnsPPOLkk49cuOrqZRfcuWZHDwMAENgOP2PX3/mjB1PDR089as6khpTS7nP2+Oah\nx6V0RErplktXzjvpMwfM3zmldHrDrSdeuvKEi960o+cBAIhqh4ddc/vB11xzcEqp948PPfDn\nxx/4xXVTZy2sbrp5Te/hs9uqH7fNPqh3zRUp/SXsyuXyqlWrNl6cPHlya2vrjp52JPl8vlis\nxcPW9ahQKFQqlaynGHfy+adOh1ufYVXXp1gsWpzxoL6Ob4VCIdXbzDWz8chjfYaVz+dzuVy9\nL87oh83afW/3nHfamb99MpdrPOGiD1WveaS/PLP5qQGKzTPL/Y9s+vldXV3vfOc7N15csmTJ\nkiVLajbt05RKpVKplNXex7kMg7suWJ9RTJ06NesRSCmladOmZT3CVqvHmWsmn89bn1HU++KU\ny+VRttbuWbF7ffor37jmin8+9EVfOv2K6jWbBedogwIAMLodfsau59G77/6fhvl7vTil1Fia\n9pq3nvTZbx6f0jEppd2aCg/1l2eXiimlcv/DhcbdNv3CqVOnXnfddRsvNjY2Pvnkkzt62s1N\nmzYtl8v19PT09/fXfu/j37Rp07q7uwcHB7MeZNzJ5/PV01Hr1q2zPpurrk9nZ6eHYseDTI6u\nz1hDQ0OpVFq7dm3Wg4xHzc3NLS0tQ0ND1mdYzc3NxWKxu7s760G2SaVSmT59+khbd3zYPfaN\nsz6x+ivf+OrUQi6lNNj3u3zDTtVN+81oWbG6c/bcGSmlztUrWnbab9MvzOfzz33uc/9yOz09\nPT09O3rakQwNDY1+5nMiszijsz6jKJfLwm48qK+7aPVv7Opr5prZ+B/K+gyrUqlUKpXYi7PD\nH4pt2/1dU3PrP3zulXfc/du77/j5hacvf+GBR1c3LVjyytvP/vRt9zzwu7tWnnP27a86at8d\nPQwAQGA7/Ixdoflvzv/YUZ//+o8+c+aK/JRd5r328H95299VN7XPPea0RcsvOX9pZ5q+4NAz\njp4z4nlFAAC2qBbPim2f88ZT57xx2E1zF3VctKijBjMAAITnvWIBAIIQdgAAQQg7AIAghB0A\nQBDCDgAgCGEHABCEsAMACELYAQAEIewAAIIQdgAAQQg7AIAghB0AQBDCDgAgCGEHABCEsAMA\n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\nLy88tOHRty76/Cnf/Xwpn/vleQfu/94zH9v93Tf+/Mb3zH78E0e94U3n/rL6aZVyT0op5Rtr\nMTQwgXkoFmBEC2eUrn+898edff93atOwn/CD98858t5jHr7xmJTSHpMa7+0Z+HX3hj0nNQys\n/1Vj6983TJq9ofvulFL/2pubp722pf1NPWuur+k3AEwwztgBjOjts6amlG56om/YresevPKQ\nLz521dePqF6sHk//sKGcUhra8OeUUqqUq5v6nvhRSmnqrLfv4HmBiU7YAYxowdK9U0o/WvHI\nMNsqgx9+fce807/7qv89mXfFsgNSSu884OgvX/Xlow5YnFLa/2NXVDc9suKmlNLeS/etydTA\nxOWhWIARlfse2G3qrA2zzl9zd8fTNv32Xw+Z96G+Rx/7XvW1i1NKKVV+eNkZp332a/es+uNO\ns17y9vcvO/N9r69uu+AlM05c3bh67cMzmwu1nB+YaIQdwGj+84NzXv25+37V1bVn6enPjR2j\nwZ67pkyZO+uf/+NX575i+84G8DQeigUYzYJl1+xWHDj+q/c941u472vHDzTsds2ZL9+OUwEM\nyxk7gC144JvH7v6e2//niVtmFLf6l+GhwTX7TH/uXl++96I3z9wRswFsyhk7gC2YuejiKw6f\neeEv/vwMvvbPv7hw5uFXqDqgNpyxAwAIwhk7AIAghB0AQBDCDgAgCGEHABCEsAMACELYAQAE\nIewAAIIQdgAAQQg7AIAghB0AQBDCDgAgCGEHABDE/wehkbLYa17MVgAAAABJRU5ErkJggg==",
      "text/plain": [
       "plot without title"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "df %>%\n",
    "  ggplot(aes(`涨跌幅(%)`)) +\n",
    "  geom_histogram(bins=30)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 61.以data的列名创建一个dataframe"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 73,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "temp <- as_tibble(names(df))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 62.打印所有换手率不是数字的行"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 74,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Warning message in lapply(x, `[`, i):\n",
      "“NAs introduced by coercion”"
     ]
    },
    {
     "data": {
      "text/html": [
       "<table>\n",
       "<thead><tr><th scope=col>﻿代码</th><th scope=col>简称</th><th scope=col>日期</th><th scope=col>前收盘价(元)</th><th scope=col>开盘价(元)</th><th scope=col>最高价(元)</th><th scope=col>最低价(元)</th><th scope=col>收盘价(元)</th><th scope=col>成交量(股)</th><th scope=col>成交金额(元)</th><th scope=col>涨跌(元)</th><th scope=col>涨跌幅(%)</th><th scope=col>均价(元)</th><th scope=col>换手率(%)</th><th scope=col>A股流通市值(元)</th><th scope=col>总市值(元)</th><th scope=col>A股流通股本(股)</th><th scope=col>市盈率</th></tr></thead>\n",
       "<tbody>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2016-02-16 </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>--         </td><td>--         </td><td>0          </td><td>0          </td><td>--         </td><td>--         </td><td>3.44157e+11</td><td>3.44157e+11</td><td>18653471415</td><td>6.801      </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2016-02-17 </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>--         </td><td>--         </td><td>0          </td><td>0          </td><td>--         </td><td>--         </td><td>3.44157e+11</td><td>3.44157e+11</td><td>18653471415</td><td>6.801      </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2016-02-18 </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>--         </td><td>--         </td><td>0          </td><td>0          </td><td>--         </td><td>--         </td><td>3.44157e+11</td><td>3.44157e+11</td><td>18653471415</td><td>6.801      </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2016-02-19 </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>--         </td><td>--         </td><td>0          </td><td>0          </td><td>--         </td><td>--         </td><td>3.44157e+11</td><td>3.44157e+11</td><td>18653471415</td><td>6.801      </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2016-02-22 </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>--         </td><td>--         </td><td>0          </td><td>0          </td><td>--         </td><td>--         </td><td>3.44157e+11</td><td>3.44157e+11</td><td>18653471415</td><td>6.801      </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2016-02-23 </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>--         </td><td>--         </td><td>0          </td><td>0          </td><td>--         </td><td>--         </td><td>3.44157e+11</td><td>3.44157e+11</td><td>18653471415</td><td>6.801      </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2016-02-24 </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>--         </td><td>--         </td><td>0          </td><td>0          </td><td>--         </td><td>--         </td><td>3.44157e+11</td><td>3.44157e+11</td><td>18653471415</td><td>6.801      </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2016-02-25 </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>--         </td><td>--         </td><td>0          </td><td>0          </td><td>--         </td><td>--         </td><td>3.44157e+11</td><td>3.44157e+11</td><td>18653471415</td><td>6.801      </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2016-02-26 </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>--         </td><td>--         </td><td>0          </td><td>0          </td><td>--         </td><td>--         </td><td>3.44157e+11</td><td>3.44157e+11</td><td>18653471415</td><td>6.801      </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2016-02-29 </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>--         </td><td>--         </td><td>0          </td><td>0          </td><td>--         </td><td>--         </td><td>3.44157e+11</td><td>3.44157e+11</td><td>18653471415</td><td>6.801      </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2016-03-01 </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>--         </td><td>--         </td><td>0          </td><td>0          </td><td>--         </td><td>--         </td><td>3.44157e+11</td><td>3.44157e+11</td><td>18653471415</td><td>6.801      </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2016-03-02 </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>--         </td><td>--         </td><td>0          </td><td>0          </td><td>--         </td><td>--         </td><td>3.44157e+11</td><td>3.44157e+11</td><td>18653471415</td><td>6.801      </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2016-03-03 </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>--         </td><td>--         </td><td>0          </td><td>0          </td><td>--         </td><td>--         </td><td>3.44157e+11</td><td>3.44157e+11</td><td>18653471415</td><td>6.801      </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2016-03-04 </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>--         </td><td>--         </td><td>0          </td><td>0          </td><td>--         </td><td>--         </td><td>3.44157e+11</td><td>3.44157e+11</td><td>18653471415</td><td>6.801      </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2016-03-07 </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>--         </td><td>--         </td><td>0          </td><td>0          </td><td>--         </td><td>--         </td><td>3.44157e+11</td><td>3.44157e+11</td><td>18653471415</td><td>6.801      </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2016-03-08 </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>--         </td><td>--         </td><td>0          </td><td>0          </td><td>--         </td><td>--         </td><td>3.44157e+11</td><td>3.44157e+11</td><td>18653471415</td><td>6.801      </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2016-03-09 </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>--         </td><td>--         </td><td>0          </td><td>0          </td><td>--         </td><td>--         </td><td>3.44157e+11</td><td>3.44157e+11</td><td>18653471415</td><td>6.801      </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2016-03-10 </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>--         </td><td>--         </td><td>0          </td><td>0          </td><td>--         </td><td>--         </td><td>3.44157e+11</td><td>3.44157e+11</td><td>18653471415</td><td>6.801      </td></tr>\n",
       "</tbody>\n",
       "</table>\n"
      ],
      "text/latex": [
       "\\begin{tabular}{r|llllllllllllllllll}\n",
       " ﻿代码 & 简称 & 日期 & 前收盘价(元) & 开盘价(元) & 最高价(元) & 最低价(元) & 收盘价(元) & 成交量(股) & 成交金额(元) & 涨跌(元) & 涨跌幅(\\%) & 均价(元) & 换手率(\\%) & A股流通市值(元) & 总市值(元) & A股流通股本(股) & 市盈率\\\\\n",
       "\\hline\n",
       "\t 600000.SH   & 浦发银行    & 2016-02-16  & 16.2946     & 16.2946     & 16.2946     & 16.2946     & 16.2946     & --          & --          & 0           & 0           & --          & --          & 3.44157e+11 & 3.44157e+11 & 18653471415 & 6.801      \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2016-02-17  & 16.2946     & 16.2946     & 16.2946     & 16.2946     & 16.2946     & --          & --          & 0           & 0           & --          & --          & 3.44157e+11 & 3.44157e+11 & 18653471415 & 6.801      \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2016-02-18  & 16.2946     & 16.2946     & 16.2946     & 16.2946     & 16.2946     & --          & --          & 0           & 0           & --          & --          & 3.44157e+11 & 3.44157e+11 & 18653471415 & 6.801      \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2016-02-19  & 16.2946     & 16.2946     & 16.2946     & 16.2946     & 16.2946     & --          & --          & 0           & 0           & --          & --          & 3.44157e+11 & 3.44157e+11 & 18653471415 & 6.801      \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2016-02-22  & 16.2946     & 16.2946     & 16.2946     & 16.2946     & 16.2946     & --          & --          & 0           & 0           & --          & --          & 3.44157e+11 & 3.44157e+11 & 18653471415 & 6.801      \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2016-02-23  & 16.2946     & 16.2946     & 16.2946     & 16.2946     & 16.2946     & --          & --          & 0           & 0           & --          & --          & 3.44157e+11 & 3.44157e+11 & 18653471415 & 6.801      \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2016-02-24  & 16.2946     & 16.2946     & 16.2946     & 16.2946     & 16.2946     & --          & --          & 0           & 0           & --          & --          & 3.44157e+11 & 3.44157e+11 & 18653471415 & 6.801      \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2016-02-25  & 16.2946     & 16.2946     & 16.2946     & 16.2946     & 16.2946     & --          & --          & 0           & 0           & --          & --          & 3.44157e+11 & 3.44157e+11 & 18653471415 & 6.801      \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2016-02-26  & 16.2946     & 16.2946     & 16.2946     & 16.2946     & 16.2946     & --          & --          & 0           & 0           & --          & --          & 3.44157e+11 & 3.44157e+11 & 18653471415 & 6.801      \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2016-02-29  & 16.2946     & 16.2946     & 16.2946     & 16.2946     & 16.2946     & --          & --          & 0           & 0           & --          & --          & 3.44157e+11 & 3.44157e+11 & 18653471415 & 6.801      \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2016-03-01  & 16.2946     & 16.2946     & 16.2946     & 16.2946     & 16.2946     & --          & --          & 0           & 0           & --          & --          & 3.44157e+11 & 3.44157e+11 & 18653471415 & 6.801      \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2016-03-02  & 16.2946     & 16.2946     & 16.2946     & 16.2946     & 16.2946     & --          & --          & 0           & 0           & --          & --          & 3.44157e+11 & 3.44157e+11 & 18653471415 & 6.801      \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2016-03-03  & 16.2946     & 16.2946     & 16.2946     & 16.2946     & 16.2946     & --          & --          & 0           & 0           & --          & --          & 3.44157e+11 & 3.44157e+11 & 18653471415 & 6.801      \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2016-03-04  & 16.2946     & 16.2946     & 16.2946     & 16.2946     & 16.2946     & --          & --          & 0           & 0           & --          & --          & 3.44157e+11 & 3.44157e+11 & 18653471415 & 6.801      \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2016-03-07  & 16.2946     & 16.2946     & 16.2946     & 16.2946     & 16.2946     & --          & --          & 0           & 0           & --          & --          & 3.44157e+11 & 3.44157e+11 & 18653471415 & 6.801      \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2016-03-08  & 16.2946     & 16.2946     & 16.2946     & 16.2946     & 16.2946     & --          & --          & 0           & 0           & --          & --          & 3.44157e+11 & 3.44157e+11 & 18653471415 & 6.801      \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2016-03-09  & 16.2946     & 16.2946     & 16.2946     & 16.2946     & 16.2946     & --          & --          & 0           & 0           & --          & --          & 3.44157e+11 & 3.44157e+11 & 18653471415 & 6.801      \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2016-03-10  & 16.2946     & 16.2946     & 16.2946     & 16.2946     & 16.2946     & --          & --          & 0           & 0           & --          & --          & 3.44157e+11 & 3.44157e+11 & 18653471415 & 6.801      \\\\\n",
       "\\end{tabular}\n"
      ],
      "text/markdown": [
       "\n",
       "﻿代码 | 简称 | 日期 | 前收盘价(元) | 开盘价(元) | 最高价(元) | 最低价(元) | 收盘价(元) | 成交量(股) | 成交金额(元) | 涨跌(元) | 涨跌幅(%) | 均价(元) | 换手率(%) | A股流通市值(元) | 总市值(元) | A股流通股本(股) | 市盈率 | \n",
       "|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|\n",
       "| 600000.SH   | 浦发银行    | 2016-02-16  | 16.2946     | 16.2946     | 16.2946     | 16.2946     | 16.2946     | --          | --          | 0           | 0           | --          | --          | 3.44157e+11 | 3.44157e+11 | 18653471415 | 6.801       | \n",
       "| 600000.SH   | 浦发银行    | 2016-02-17  | 16.2946     | 16.2946     | 16.2946     | 16.2946     | 16.2946     | --          | --          | 0           | 0           | --          | --          | 3.44157e+11 | 3.44157e+11 | 18653471415 | 6.801       | \n",
       "| 600000.SH   | 浦发银行    | 2016-02-18  | 16.2946     | 16.2946     | 16.2946     | 16.2946     | 16.2946     | --          | --          | 0           | 0           | --          | --          | 3.44157e+11 | 3.44157e+11 | 18653471415 | 6.801       | \n",
       "| 600000.SH   | 浦发银行    | 2016-02-19  | 16.2946     | 16.2946     | 16.2946     | 16.2946     | 16.2946     | --          | --          | 0           | 0           | --          | --          | 3.44157e+11 | 3.44157e+11 | 18653471415 | 6.801       | \n",
       "| 600000.SH   | 浦发银行    | 2016-02-22  | 16.2946     | 16.2946     | 16.2946     | 16.2946     | 16.2946     | --          | --          | 0           | 0           | --          | --          | 3.44157e+11 | 3.44157e+11 | 18653471415 | 6.801       | \n",
       "| 600000.SH   | 浦发银行    | 2016-02-23  | 16.2946     | 16.2946     | 16.2946     | 16.2946     | 16.2946     | --          | --          | 0           | 0           | --          | --          | 3.44157e+11 | 3.44157e+11 | 18653471415 | 6.801       | \n",
       "| 600000.SH   | 浦发银行    | 2016-02-24  | 16.2946     | 16.2946     | 16.2946     | 16.2946     | 16.2946     | --          | --          | 0           | 0           | --          | --          | 3.44157e+11 | 3.44157e+11 | 18653471415 | 6.801       | \n",
       "| 600000.SH   | 浦发银行    | 2016-02-25  | 16.2946     | 16.2946     | 16.2946     | 16.2946     | 16.2946     | --          | --          | 0           | 0           | --          | --          | 3.44157e+11 | 3.44157e+11 | 18653471415 | 6.801       | \n",
       "| 600000.SH   | 浦发银行    | 2016-02-26  | 16.2946     | 16.2946     | 16.2946     | 16.2946     | 16.2946     | --          | --          | 0           | 0           | --          | --          | 3.44157e+11 | 3.44157e+11 | 18653471415 | 6.801       | \n",
       "| 600000.SH   | 浦发银行    | 2016-02-29  | 16.2946     | 16.2946     | 16.2946     | 16.2946     | 16.2946     | --          | --          | 0           | 0           | --          | --          | 3.44157e+11 | 3.44157e+11 | 18653471415 | 6.801       | \n",
       "| 600000.SH   | 浦发银行    | 2016-03-01  | 16.2946     | 16.2946     | 16.2946     | 16.2946     | 16.2946     | --          | --          | 0           | 0           | --          | --          | 3.44157e+11 | 3.44157e+11 | 18653471415 | 6.801       | \n",
       "| 600000.SH   | 浦发银行    | 2016-03-02  | 16.2946     | 16.2946     | 16.2946     | 16.2946     | 16.2946     | --          | --          | 0           | 0           | --          | --          | 3.44157e+11 | 3.44157e+11 | 18653471415 | 6.801       | \n",
       "| 600000.SH   | 浦发银行    | 2016-03-03  | 16.2946     | 16.2946     | 16.2946     | 16.2946     | 16.2946     | --          | --          | 0           | 0           | --          | --          | 3.44157e+11 | 3.44157e+11 | 18653471415 | 6.801       | \n",
       "| 600000.SH   | 浦发银行    | 2016-03-04  | 16.2946     | 16.2946     | 16.2946     | 16.2946     | 16.2946     | --          | --          | 0           | 0           | --          | --          | 3.44157e+11 | 3.44157e+11 | 18653471415 | 6.801       | \n",
       "| 600000.SH   | 浦发银行    | 2016-03-07  | 16.2946     | 16.2946     | 16.2946     | 16.2946     | 16.2946     | --          | --          | 0           | 0           | --          | --          | 3.44157e+11 | 3.44157e+11 | 18653471415 | 6.801       | \n",
       "| 600000.SH   | 浦发银行    | 2016-03-08  | 16.2946     | 16.2946     | 16.2946     | 16.2946     | 16.2946     | --          | --          | 0           | 0           | --          | --          | 3.44157e+11 | 3.44157e+11 | 18653471415 | 6.801       | \n",
       "| 600000.SH   | 浦发银行    | 2016-03-09  | 16.2946     | 16.2946     | 16.2946     | 16.2946     | 16.2946     | --          | --          | 0           | 0           | --          | --          | 3.44157e+11 | 3.44157e+11 | 18653471415 | 6.801       | \n",
       "| 600000.SH   | 浦发银行    | 2016-03-10  | 16.2946     | 16.2946     | 16.2946     | 16.2946     | 16.2946     | --          | --          | 0           | 0           | --          | --          | 3.44157e+11 | 3.44157e+11 | 18653471415 | 6.801       | \n",
       "\n",
       "\n"
      ],
      "text/plain": [
       "   ﻿代码      简称     日期       前收盘价(元) 开盘价(元) 最高价(元) 最低价(元)\n",
       "1  600000.SH 浦发银行 2016-02-16 16.2946      16.2946    16.2946    16.2946   \n",
       "2  600000.SH 浦发银行 2016-02-17 16.2946      16.2946    16.2946    16.2946   \n",
       "3  600000.SH 浦发银行 2016-02-18 16.2946      16.2946    16.2946    16.2946   \n",
       "4  600000.SH 浦发银行 2016-02-19 16.2946      16.2946    16.2946    16.2946   \n",
       "5  600000.SH 浦发银行 2016-02-22 16.2946      16.2946    16.2946    16.2946   \n",
       "6  600000.SH 浦发银行 2016-02-23 16.2946      16.2946    16.2946    16.2946   \n",
       "7  600000.SH 浦发银行 2016-02-24 16.2946      16.2946    16.2946    16.2946   \n",
       "8  600000.SH 浦发银行 2016-02-25 16.2946      16.2946    16.2946    16.2946   \n",
       "9  600000.SH 浦发银行 2016-02-26 16.2946      16.2946    16.2946    16.2946   \n",
       "10 600000.SH 浦发银行 2016-02-29 16.2946      16.2946    16.2946    16.2946   \n",
       "11 600000.SH 浦发银行 2016-03-01 16.2946      16.2946    16.2946    16.2946   \n",
       "12 600000.SH 浦发银行 2016-03-02 16.2946      16.2946    16.2946    16.2946   \n",
       "13 600000.SH 浦发银行 2016-03-03 16.2946      16.2946    16.2946    16.2946   \n",
       "14 600000.SH 浦发银行 2016-03-04 16.2946      16.2946    16.2946    16.2946   \n",
       "15 600000.SH 浦发银行 2016-03-07 16.2946      16.2946    16.2946    16.2946   \n",
       "16 600000.SH 浦发银行 2016-03-08 16.2946      16.2946    16.2946    16.2946   \n",
       "17 600000.SH 浦发银行 2016-03-09 16.2946      16.2946    16.2946    16.2946   \n",
       "18 600000.SH 浦发银行 2016-03-10 16.2946      16.2946    16.2946    16.2946   \n",
       "   收盘价(元) 成交量(股) 成交金额(元) 涨跌(元) 涨跌幅(%) 均价(元) 换手率(%)\n",
       "1  16.2946    --         --           0        0         --       --       \n",
       "2  16.2946    --         --           0        0         --       --       \n",
       "3  16.2946    --         --           0        0         --       --       \n",
       "4  16.2946    --         --           0        0         --       --       \n",
       "5  16.2946    --         --           0        0         --       --       \n",
       "6  16.2946    --         --           0        0         --       --       \n",
       "7  16.2946    --         --           0        0         --       --       \n",
       "8  16.2946    --         --           0        0         --       --       \n",
       "9  16.2946    --         --           0        0         --       --       \n",
       "10 16.2946    --         --           0        0         --       --       \n",
       "11 16.2946    --         --           0        0         --       --       \n",
       "12 16.2946    --         --           0        0         --       --       \n",
       "13 16.2946    --         --           0        0         --       --       \n",
       "14 16.2946    --         --           0        0         --       --       \n",
       "15 16.2946    --         --           0        0         --       --       \n",
       "16 16.2946    --         --           0        0         --       --       \n",
       "17 16.2946    --         --           0        0         --       --       \n",
       "18 16.2946    --         --           0        0         --       --       \n",
       "   A股流通市值(元) 总市值(元)  A股流通股本(股) 市盈率\n",
       "1  3.44157e+11     3.44157e+11 18653471415     6.801 \n",
       "2  3.44157e+11     3.44157e+11 18653471415     6.801 \n",
       "3  3.44157e+11     3.44157e+11 18653471415     6.801 \n",
       "4  3.44157e+11     3.44157e+11 18653471415     6.801 \n",
       "5  3.44157e+11     3.44157e+11 18653471415     6.801 \n",
       "6  3.44157e+11     3.44157e+11 18653471415     6.801 \n",
       "7  3.44157e+11     3.44157e+11 18653471415     6.801 \n",
       "8  3.44157e+11     3.44157e+11 18653471415     6.801 \n",
       "9  3.44157e+11     3.44157e+11 18653471415     6.801 \n",
       "10 3.44157e+11     3.44157e+11 18653471415     6.801 \n",
       "11 3.44157e+11     3.44157e+11 18653471415     6.801 \n",
       "12 3.44157e+11     3.44157e+11 18653471415     6.801 \n",
       "13 3.44157e+11     3.44157e+11 18653471415     6.801 \n",
       "14 3.44157e+11     3.44157e+11 18653471415     6.801 \n",
       "15 3.44157e+11     3.44157e+11 18653471415     6.801 \n",
       "16 3.44157e+11     3.44157e+11 18653471415     6.801 \n",
       "17 3.44157e+11     3.44157e+11 18653471415     6.801 \n",
       "18 3.44157e+11     3.44157e+11 18653471415     6.801 "
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "#换手率这一列属性为chr，需要先强转数值型\n",
    "#如果转换失败会变成NA，判断即可\n",
    "df[is.na(as.numeric(df$`换手率(%)`)),]"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 63.打印所有换手率为--的行"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 75,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<table>\n",
       "<thead><tr><th scope=col>﻿代码</th><th scope=col>简称</th><th scope=col>日期</th><th scope=col>前收盘价(元)</th><th scope=col>开盘价(元)</th><th scope=col>最高价(元)</th><th scope=col>最低价(元)</th><th scope=col>收盘价(元)</th><th scope=col>成交量(股)</th><th scope=col>成交金额(元)</th><th scope=col>涨跌(元)</th><th scope=col>涨跌幅(%)</th><th scope=col>均价(元)</th><th scope=col>换手率(%)</th><th scope=col>A股流通市值(元)</th><th scope=col>总市值(元)</th><th scope=col>A股流通股本(股)</th><th scope=col>市盈率</th></tr></thead>\n",
       "<tbody>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2016-02-16 </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>--         </td><td>--         </td><td>0          </td><td>0          </td><td>--         </td><td>--         </td><td>3.44157e+11</td><td>3.44157e+11</td><td>18653471415</td><td>6.801      </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2016-02-17 </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>--         </td><td>--         </td><td>0          </td><td>0          </td><td>--         </td><td>--         </td><td>3.44157e+11</td><td>3.44157e+11</td><td>18653471415</td><td>6.801      </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2016-02-18 </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>--         </td><td>--         </td><td>0          </td><td>0          </td><td>--         </td><td>--         </td><td>3.44157e+11</td><td>3.44157e+11</td><td>18653471415</td><td>6.801      </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2016-02-19 </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>--         </td><td>--         </td><td>0          </td><td>0          </td><td>--         </td><td>--         </td><td>3.44157e+11</td><td>3.44157e+11</td><td>18653471415</td><td>6.801      </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2016-02-22 </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>--         </td><td>--         </td><td>0          </td><td>0          </td><td>--         </td><td>--         </td><td>3.44157e+11</td><td>3.44157e+11</td><td>18653471415</td><td>6.801      </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2016-02-23 </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>--         </td><td>--         </td><td>0          </td><td>0          </td><td>--         </td><td>--         </td><td>3.44157e+11</td><td>3.44157e+11</td><td>18653471415</td><td>6.801      </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2016-02-24 </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>--         </td><td>--         </td><td>0          </td><td>0          </td><td>--         </td><td>--         </td><td>3.44157e+11</td><td>3.44157e+11</td><td>18653471415</td><td>6.801      </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2016-02-25 </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>--         </td><td>--         </td><td>0          </td><td>0          </td><td>--         </td><td>--         </td><td>3.44157e+11</td><td>3.44157e+11</td><td>18653471415</td><td>6.801      </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2016-02-26 </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>--         </td><td>--         </td><td>0          </td><td>0          </td><td>--         </td><td>--         </td><td>3.44157e+11</td><td>3.44157e+11</td><td>18653471415</td><td>6.801      </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2016-02-29 </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>--         </td><td>--         </td><td>0          </td><td>0          </td><td>--         </td><td>--         </td><td>3.44157e+11</td><td>3.44157e+11</td><td>18653471415</td><td>6.801      </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2016-03-01 </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>--         </td><td>--         </td><td>0          </td><td>0          </td><td>--         </td><td>--         </td><td>3.44157e+11</td><td>3.44157e+11</td><td>18653471415</td><td>6.801      </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2016-03-02 </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>--         </td><td>--         </td><td>0          </td><td>0          </td><td>--         </td><td>--         </td><td>3.44157e+11</td><td>3.44157e+11</td><td>18653471415</td><td>6.801      </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2016-03-03 </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>--         </td><td>--         </td><td>0          </td><td>0          </td><td>--         </td><td>--         </td><td>3.44157e+11</td><td>3.44157e+11</td><td>18653471415</td><td>6.801      </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2016-03-04 </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>--         </td><td>--         </td><td>0          </td><td>0          </td><td>--         </td><td>--         </td><td>3.44157e+11</td><td>3.44157e+11</td><td>18653471415</td><td>6.801      </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2016-03-07 </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>--         </td><td>--         </td><td>0          </td><td>0          </td><td>--         </td><td>--         </td><td>3.44157e+11</td><td>3.44157e+11</td><td>18653471415</td><td>6.801      </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2016-03-08 </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>--         </td><td>--         </td><td>0          </td><td>0          </td><td>--         </td><td>--         </td><td>3.44157e+11</td><td>3.44157e+11</td><td>18653471415</td><td>6.801      </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2016-03-09 </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>--         </td><td>--         </td><td>0          </td><td>0          </td><td>--         </td><td>--         </td><td>3.44157e+11</td><td>3.44157e+11</td><td>18653471415</td><td>6.801      </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2016-03-10 </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>16.2946    </td><td>--         </td><td>--         </td><td>0          </td><td>0          </td><td>--         </td><td>--         </td><td>3.44157e+11</td><td>3.44157e+11</td><td>18653471415</td><td>6.801      </td></tr>\n",
       "</tbody>\n",
       "</table>\n"
      ],
      "text/latex": [
       "\\begin{tabular}{r|llllllllllllllllll}\n",
       " ﻿代码 & 简称 & 日期 & 前收盘价(元) & 开盘价(元) & 最高价(元) & 最低价(元) & 收盘价(元) & 成交量(股) & 成交金额(元) & 涨跌(元) & 涨跌幅(\\%) & 均价(元) & 换手率(\\%) & A股流通市值(元) & 总市值(元) & A股流通股本(股) & 市盈率\\\\\n",
       "\\hline\n",
       "\t 600000.SH   & 浦发银行    & 2016-02-16  & 16.2946     & 16.2946     & 16.2946     & 16.2946     & 16.2946     & --          & --          & 0           & 0           & --          & --          & 3.44157e+11 & 3.44157e+11 & 18653471415 & 6.801      \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2016-02-17  & 16.2946     & 16.2946     & 16.2946     & 16.2946     & 16.2946     & --          & --          & 0           & 0           & --          & --          & 3.44157e+11 & 3.44157e+11 & 18653471415 & 6.801      \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2016-02-18  & 16.2946     & 16.2946     & 16.2946     & 16.2946     & 16.2946     & --          & --          & 0           & 0           & --          & --          & 3.44157e+11 & 3.44157e+11 & 18653471415 & 6.801      \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2016-02-19  & 16.2946     & 16.2946     & 16.2946     & 16.2946     & 16.2946     & --          & --          & 0           & 0           & --          & --          & 3.44157e+11 & 3.44157e+11 & 18653471415 & 6.801      \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2016-02-22  & 16.2946     & 16.2946     & 16.2946     & 16.2946     & 16.2946     & --          & --          & 0           & 0           & --          & --          & 3.44157e+11 & 3.44157e+11 & 18653471415 & 6.801      \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2016-02-23  & 16.2946     & 16.2946     & 16.2946     & 16.2946     & 16.2946     & --          & --          & 0           & 0           & --          & --          & 3.44157e+11 & 3.44157e+11 & 18653471415 & 6.801      \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2016-02-24  & 16.2946     & 16.2946     & 16.2946     & 16.2946     & 16.2946     & --          & --          & 0           & 0           & --          & --          & 3.44157e+11 & 3.44157e+11 & 18653471415 & 6.801      \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2016-02-25  & 16.2946     & 16.2946     & 16.2946     & 16.2946     & 16.2946     & --          & --          & 0           & 0           & --          & --          & 3.44157e+11 & 3.44157e+11 & 18653471415 & 6.801      \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2016-02-26  & 16.2946     & 16.2946     & 16.2946     & 16.2946     & 16.2946     & --          & --          & 0           & 0           & --          & --          & 3.44157e+11 & 3.44157e+11 & 18653471415 & 6.801      \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2016-02-29  & 16.2946     & 16.2946     & 16.2946     & 16.2946     & 16.2946     & --          & --          & 0           & 0           & --          & --          & 3.44157e+11 & 3.44157e+11 & 18653471415 & 6.801      \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2016-03-01  & 16.2946     & 16.2946     & 16.2946     & 16.2946     & 16.2946     & --          & --          & 0           & 0           & --          & --          & 3.44157e+11 & 3.44157e+11 & 18653471415 & 6.801      \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2016-03-02  & 16.2946     & 16.2946     & 16.2946     & 16.2946     & 16.2946     & --          & --          & 0           & 0           & --          & --          & 3.44157e+11 & 3.44157e+11 & 18653471415 & 6.801      \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2016-03-03  & 16.2946     & 16.2946     & 16.2946     & 16.2946     & 16.2946     & --          & --          & 0           & 0           & --          & --          & 3.44157e+11 & 3.44157e+11 & 18653471415 & 6.801      \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2016-03-04  & 16.2946     & 16.2946     & 16.2946     & 16.2946     & 16.2946     & --          & --          & 0           & 0           & --          & --          & 3.44157e+11 & 3.44157e+11 & 18653471415 & 6.801      \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2016-03-07  & 16.2946     & 16.2946     & 16.2946     & 16.2946     & 16.2946     & --          & --          & 0           & 0           & --          & --          & 3.44157e+11 & 3.44157e+11 & 18653471415 & 6.801      \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2016-03-08  & 16.2946     & 16.2946     & 16.2946     & 16.2946     & 16.2946     & --          & --          & 0           & 0           & --          & --          & 3.44157e+11 & 3.44157e+11 & 18653471415 & 6.801      \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2016-03-09  & 16.2946     & 16.2946     & 16.2946     & 16.2946     & 16.2946     & --          & --          & 0           & 0           & --          & --          & 3.44157e+11 & 3.44157e+11 & 18653471415 & 6.801      \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2016-03-10  & 16.2946     & 16.2946     & 16.2946     & 16.2946     & 16.2946     & --          & --          & 0           & 0           & --          & --          & 3.44157e+11 & 3.44157e+11 & 18653471415 & 6.801      \\\\\n",
       "\\end{tabular}\n"
      ],
      "text/markdown": [
       "\n",
       "﻿代码 | 简称 | 日期 | 前收盘价(元) | 开盘价(元) | 最高价(元) | 最低价(元) | 收盘价(元) | 成交量(股) | 成交金额(元) | 涨跌(元) | 涨跌幅(%) | 均价(元) | 换手率(%) | A股流通市值(元) | 总市值(元) | A股流通股本(股) | 市盈率 | \n",
       "|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|\n",
       "| 600000.SH   | 浦发银行    | 2016-02-16  | 16.2946     | 16.2946     | 16.2946     | 16.2946     | 16.2946     | --          | --          | 0           | 0           | --          | --          | 3.44157e+11 | 3.44157e+11 | 18653471415 | 6.801       | \n",
       "| 600000.SH   | 浦发银行    | 2016-02-17  | 16.2946     | 16.2946     | 16.2946     | 16.2946     | 16.2946     | --          | --          | 0           | 0           | --          | --          | 3.44157e+11 | 3.44157e+11 | 18653471415 | 6.801       | \n",
       "| 600000.SH   | 浦发银行    | 2016-02-18  | 16.2946     | 16.2946     | 16.2946     | 16.2946     | 16.2946     | --          | --          | 0           | 0           | --          | --          | 3.44157e+11 | 3.44157e+11 | 18653471415 | 6.801       | \n",
       "| 600000.SH   | 浦发银行    | 2016-02-19  | 16.2946     | 16.2946     | 16.2946     | 16.2946     | 16.2946     | --          | --          | 0           | 0           | --          | --          | 3.44157e+11 | 3.44157e+11 | 18653471415 | 6.801       | \n",
       "| 600000.SH   | 浦发银行    | 2016-02-22  | 16.2946     | 16.2946     | 16.2946     | 16.2946     | 16.2946     | --          | --          | 0           | 0           | --          | --          | 3.44157e+11 | 3.44157e+11 | 18653471415 | 6.801       | \n",
       "| 600000.SH   | 浦发银行    | 2016-02-23  | 16.2946     | 16.2946     | 16.2946     | 16.2946     | 16.2946     | --          | --          | 0           | 0           | --          | --          | 3.44157e+11 | 3.44157e+11 | 18653471415 | 6.801       | \n",
       "| 600000.SH   | 浦发银行    | 2016-02-24  | 16.2946     | 16.2946     | 16.2946     | 16.2946     | 16.2946     | --          | --          | 0           | 0           | --          | --          | 3.44157e+11 | 3.44157e+11 | 18653471415 | 6.801       | \n",
       "| 600000.SH   | 浦发银行    | 2016-02-25  | 16.2946     | 16.2946     | 16.2946     | 16.2946     | 16.2946     | --          | --          | 0           | 0           | --          | --          | 3.44157e+11 | 3.44157e+11 | 18653471415 | 6.801       | \n",
       "| 600000.SH   | 浦发银行    | 2016-02-26  | 16.2946     | 16.2946     | 16.2946     | 16.2946     | 16.2946     | --          | --          | 0           | 0           | --          | --          | 3.44157e+11 | 3.44157e+11 | 18653471415 | 6.801       | \n",
       "| 600000.SH   | 浦发银行    | 2016-02-29  | 16.2946     | 16.2946     | 16.2946     | 16.2946     | 16.2946     | --          | --          | 0           | 0           | --          | --          | 3.44157e+11 | 3.44157e+11 | 18653471415 | 6.801       | \n",
       "| 600000.SH   | 浦发银行    | 2016-03-01  | 16.2946     | 16.2946     | 16.2946     | 16.2946     | 16.2946     | --          | --          | 0           | 0           | --          | --          | 3.44157e+11 | 3.44157e+11 | 18653471415 | 6.801       | \n",
       "| 600000.SH   | 浦发银行    | 2016-03-02  | 16.2946     | 16.2946     | 16.2946     | 16.2946     | 16.2946     | --          | --          | 0           | 0           | --          | --          | 3.44157e+11 | 3.44157e+11 | 18653471415 | 6.801       | \n",
       "| 600000.SH   | 浦发银行    | 2016-03-03  | 16.2946     | 16.2946     | 16.2946     | 16.2946     | 16.2946     | --          | --          | 0           | 0           | --          | --          | 3.44157e+11 | 3.44157e+11 | 18653471415 | 6.801       | \n",
       "| 600000.SH   | 浦发银行    | 2016-03-04  | 16.2946     | 16.2946     | 16.2946     | 16.2946     | 16.2946     | --          | --          | 0           | 0           | --          | --          | 3.44157e+11 | 3.44157e+11 | 18653471415 | 6.801       | \n",
       "| 600000.SH   | 浦发银行    | 2016-03-07  | 16.2946     | 16.2946     | 16.2946     | 16.2946     | 16.2946     | --          | --          | 0           | 0           | --          | --          | 3.44157e+11 | 3.44157e+11 | 18653471415 | 6.801       | \n",
       "| 600000.SH   | 浦发银行    | 2016-03-08  | 16.2946     | 16.2946     | 16.2946     | 16.2946     | 16.2946     | --          | --          | 0           | 0           | --          | --          | 3.44157e+11 | 3.44157e+11 | 18653471415 | 6.801       | \n",
       "| 600000.SH   | 浦发银行    | 2016-03-09  | 16.2946     | 16.2946     | 16.2946     | 16.2946     | 16.2946     | --          | --          | 0           | 0           | --          | --          | 3.44157e+11 | 3.44157e+11 | 18653471415 | 6.801       | \n",
       "| 600000.SH   | 浦发银行    | 2016-03-10  | 16.2946     | 16.2946     | 16.2946     | 16.2946     | 16.2946     | --          | --          | 0           | 0           | --          | --          | 3.44157e+11 | 3.44157e+11 | 18653471415 | 6.801       | \n",
       "\n",
       "\n"
      ],
      "text/plain": [
       "   ﻿代码      简称     日期       前收盘价(元) 开盘价(元) 最高价(元) 最低价(元)\n",
       "1  600000.SH 浦发银行 2016-02-16 16.2946      16.2946    16.2946    16.2946   \n",
       "2  600000.SH 浦发银行 2016-02-17 16.2946      16.2946    16.2946    16.2946   \n",
       "3  600000.SH 浦发银行 2016-02-18 16.2946      16.2946    16.2946    16.2946   \n",
       "4  600000.SH 浦发银行 2016-02-19 16.2946      16.2946    16.2946    16.2946   \n",
       "5  600000.SH 浦发银行 2016-02-22 16.2946      16.2946    16.2946    16.2946   \n",
       "6  600000.SH 浦发银行 2016-02-23 16.2946      16.2946    16.2946    16.2946   \n",
       "7  600000.SH 浦发银行 2016-02-24 16.2946      16.2946    16.2946    16.2946   \n",
       "8  600000.SH 浦发银行 2016-02-25 16.2946      16.2946    16.2946    16.2946   \n",
       "9  600000.SH 浦发银行 2016-02-26 16.2946      16.2946    16.2946    16.2946   \n",
       "10 600000.SH 浦发银行 2016-02-29 16.2946      16.2946    16.2946    16.2946   \n",
       "11 600000.SH 浦发银行 2016-03-01 16.2946      16.2946    16.2946    16.2946   \n",
       "12 600000.SH 浦发银行 2016-03-02 16.2946      16.2946    16.2946    16.2946   \n",
       "13 600000.SH 浦发银行 2016-03-03 16.2946      16.2946    16.2946    16.2946   \n",
       "14 600000.SH 浦发银行 2016-03-04 16.2946      16.2946    16.2946    16.2946   \n",
       "15 600000.SH 浦发银行 2016-03-07 16.2946      16.2946    16.2946    16.2946   \n",
       "16 600000.SH 浦发银行 2016-03-08 16.2946      16.2946    16.2946    16.2946   \n",
       "17 600000.SH 浦发银行 2016-03-09 16.2946      16.2946    16.2946    16.2946   \n",
       "18 600000.SH 浦发银行 2016-03-10 16.2946      16.2946    16.2946    16.2946   \n",
       "   收盘价(元) 成交量(股) 成交金额(元) 涨跌(元) 涨跌幅(%) 均价(元) 换手率(%)\n",
       "1  16.2946    --         --           0        0         --       --       \n",
       "2  16.2946    --         --           0        0         --       --       \n",
       "3  16.2946    --         --           0        0         --       --       \n",
       "4  16.2946    --         --           0        0         --       --       \n",
       "5  16.2946    --         --           0        0         --       --       \n",
       "6  16.2946    --         --           0        0         --       --       \n",
       "7  16.2946    --         --           0        0         --       --       \n",
       "8  16.2946    --         --           0        0         --       --       \n",
       "9  16.2946    --         --           0        0         --       --       \n",
       "10 16.2946    --         --           0        0         --       --       \n",
       "11 16.2946    --         --           0        0         --       --       \n",
       "12 16.2946    --         --           0        0         --       --       \n",
       "13 16.2946    --         --           0        0         --       --       \n",
       "14 16.2946    --         --           0        0         --       --       \n",
       "15 16.2946    --         --           0        0         --       --       \n",
       "16 16.2946    --         --           0        0         --       --       \n",
       "17 16.2946    --         --           0        0         --       --       \n",
       "18 16.2946    --         --           0        0         --       --       \n",
       "   A股流通市值(元) 总市值(元)  A股流通股本(股) 市盈率\n",
       "1  3.44157e+11     3.44157e+11 18653471415     6.801 \n",
       "2  3.44157e+11     3.44157e+11 18653471415     6.801 \n",
       "3  3.44157e+11     3.44157e+11 18653471415     6.801 \n",
       "4  3.44157e+11     3.44157e+11 18653471415     6.801 \n",
       "5  3.44157e+11     3.44157e+11 18653471415     6.801 \n",
       "6  3.44157e+11     3.44157e+11 18653471415     6.801 \n",
       "7  3.44157e+11     3.44157e+11 18653471415     6.801 \n",
       "8  3.44157e+11     3.44157e+11 18653471415     6.801 \n",
       "9  3.44157e+11     3.44157e+11 18653471415     6.801 \n",
       "10 3.44157e+11     3.44157e+11 18653471415     6.801 \n",
       "11 3.44157e+11     3.44157e+11 18653471415     6.801 \n",
       "12 3.44157e+11     3.44157e+11 18653471415     6.801 \n",
       "13 3.44157e+11     3.44157e+11 18653471415     6.801 \n",
       "14 3.44157e+11     3.44157e+11 18653471415     6.801 \n",
       "15 3.44157e+11     3.44157e+11 18653471415     6.801 \n",
       "16 3.44157e+11     3.44157e+11 18653471415     6.801 \n",
       "17 3.44157e+11     3.44157e+11 18653471415     6.801 \n",
       "18 3.44157e+11     3.44157e+11 18653471415     6.801 "
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "df %>%\n",
    "  filter(`换手率(%)` == '--')"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 64.重置data的行号"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 76,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "rownames(df) <- NULL\n",
    "\n",
    "# 如果是tibble则索引始终是按顺序"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 65.删除所有换手率为非数字的行"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 77,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Warning message in lapply(x, `[`, i):\n",
      "“NAs introduced by coercion”"
     ]
    },
    {
     "data": {
      "text/html": [
       "<table>\n",
       "<thead><tr><th scope=col>﻿代码</th><th scope=col>简称</th><th scope=col>日期</th><th scope=col>前收盘价(元)</th><th scope=col>开盘价(元)</th><th scope=col>最高价(元)</th><th scope=col>最低价(元)</th><th scope=col>收盘价(元)</th><th scope=col>成交量(股)</th><th scope=col>成交金额(元)</th><th scope=col>涨跌(元)</th><th scope=col>涨跌幅(%)</th><th scope=col>均价(元)</th><th scope=col>换手率(%)</th><th scope=col>A股流通市值(元)</th><th scope=col>总市值(元)</th><th scope=col>A股流通股本(股)</th><th scope=col>市盈率</th></tr></thead>\n",
       "<tbody>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2016-01-04 </td><td>16.1356    </td><td>16.1444    </td><td>16.1444    </td><td>15.4997    </td><td>15.7205    </td><td>42240610   </td><td>754425783  </td><td>-0.4151    </td><td>-2.5725    </td><td>17.8602    </td><td>0.2264     </td><td>3.32032e+11</td><td>3.32032e+11</td><td>18653471415</td><td>6.5614     </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2016-01-05 </td><td>15.7205    </td><td>15.4644    </td><td>15.9501    </td><td>15.3672    </td><td>15.8618    </td><td>58054793   </td><td>1034181474 </td><td> 0.1413    </td><td> 0.8989    </td><td>17.8139    </td><td>0.3112     </td><td>3.35016e+11</td><td>3.35016e+11</td><td>18653471415</td><td>6.6204     </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2016-01-06 </td><td>15.8618    </td><td>15.8088    </td><td>16.0208    </td><td>15.6234    </td><td>15.9855    </td><td>46772653   </td><td>838667398  </td><td> 0.1236    </td><td> 0.7795    </td><td>17.9307    </td><td>0.2507     </td><td>3.37628e+11</td><td>3.37628e+11</td><td>18653471415</td><td>6.6720     </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2016-01-07 </td><td>15.9855    </td><td>15.7205    </td><td>15.8088    </td><td>15.3672    </td><td>15.4644    </td><td>11350479   </td><td>199502702  </td><td>-0.5211    </td><td>-3.2597    </td><td>17.5766    </td><td>0.0608     </td><td>3.26622e+11</td><td>3.26622e+11</td><td>18653471415</td><td>6.4545     </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2016-01-08 </td><td>15.4644    </td><td>15.6675    </td><td>15.7912    </td><td>14.9345    </td><td>15.4467    </td><td>71918296   </td><td>1262105060 </td><td>-0.0177    </td><td>-0.1142    </td><td>17.5492    </td><td>0.3855     </td><td>3.26249e+11</td><td>3.26249e+11</td><td>18653471415</td><td>6.4471     </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2016-01-11 </td><td>15.4467    </td><td>15.1994    </td><td>15.4114    </td><td>14.9786    </td><td>15.0581    </td><td>90177135   </td><td>1550155933 </td><td>-0.3886    </td><td>-2.5157    </td><td>17.1901    </td><td>0.4834     </td><td>3.18042e+11</td><td>3.18042e+11</td><td>18653471415</td><td>6.2849     </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2016-01-12 </td><td>15.0581    </td><td>15.1641    </td><td>15.4732    </td><td>15.0846    </td><td>15.4114    </td><td>55374454   </td><td>964061502  </td><td> 0.3533    </td><td> 2.3460    </td><td>17.4099    </td><td>0.2969     </td><td>3.25503e+11</td><td>3.25503e+11</td><td>18653471415</td><td>6.4324     </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2016-01-13 </td><td>15.4114    </td><td>15.5174    </td><td>15.8088    </td><td>15.3231    </td><td>15.3584    </td><td>47869312   </td><td>843717365  </td><td>-0.0530    </td><td>-0.3438    </td><td>17.6254    </td><td>0.2566     </td><td>3.24384e+11</td><td>3.24384e+11</td><td>18653471415</td><td>6.4102     </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2016-01-14 </td><td>15.3584    </td><td>15.0140    </td><td>15.8883    </td><td>14.9168    </td><td>15.8265    </td><td>54838833   </td><td>966117848  </td><td> 0.4681    </td><td> 3.0477    </td><td>17.6174    </td><td>0.294      </td><td>3.34270e+11</td><td>3.34270e+11</td><td>18653471415</td><td>6.6056     </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2016-01-15 </td><td>15.8265    </td><td>15.7205    </td><td>16.0296    </td><td>15.4732    </td><td>15.5262    </td><td>46723139   </td><td>836146426  </td><td>-0.3003    </td><td>-1.8973    </td><td>17.8958    </td><td>0.2505     </td><td>3.27928e+11</td><td>3.27928e+11</td><td>18653471415</td><td>6.4803     </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2016-01-18 </td><td>15.5262    </td><td>15.3937    </td><td>15.8883    </td><td>15.2966    </td><td>15.6145    </td><td>32729006   </td><td>583291559  </td><td> 0.0883    </td><td> 0.5688    </td><td>17.8219    </td><td>0.1755     </td><td>3.29793e+11</td><td>3.29793e+11</td><td>18653471415</td><td>6.5171     </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2016-01-19 </td><td>15.6145    </td><td>15.7029    </td><td>15.7912    </td><td>15.4556    </td><td>15.6940    </td><td>29807159   </td><td>527753175  </td><td> 0.0795    </td><td> 0.5090    </td><td>17.7056    </td><td>0.1598     </td><td>3.31472e+11</td><td>3.31472e+11</td><td>18653471415</td><td>6.5503     </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2016-01-20 </td><td>15.6940    </td><td>15.5527    </td><td>15.6322    </td><td>15.0846    </td><td>15.2348    </td><td>35968636   </td><td>623546924  </td><td>-0.4593    </td><td>-2.9263    </td><td>17.3359    </td><td>0.1928     </td><td>3.21772e+11</td><td>3.21772e+11</td><td>18653471415</td><td>6.3586     </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2016-01-21 </td><td>15.2348    </td><td>15.2083    </td><td>15.4202    </td><td>14.5724    </td><td>14.6430    </td><td>34197115   </td><td>582845476  </td><td>-0.5917    </td><td>-3.8841    </td><td>17.0437    </td><td>0.1833     </td><td>3.09275e+11</td><td>3.09275e+11</td><td>18653471415</td><td>6.1117     </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2016-01-22 </td><td>14.6430    </td><td>14.8727    </td><td>15.1111    </td><td>14.5636    </td><td>15.0316    </td><td>42007318   </td><td>708179241  </td><td> 0.3886    </td><td> 2.6538    </td><td>16.8585    </td><td>0.2252     </td><td>3.17482e+11</td><td>3.17482e+11</td><td>18653471415</td><td>6.2739     </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2016-01-25 </td><td>15.0316    </td><td>15.0140    </td><td>15.1641    </td><td>14.7667    </td><td>15.0405    </td><td>23558971   </td><td>400445071  </td><td> 0.0088    </td><td> 0.0588    </td><td>16.9976    </td><td>0.1263     </td><td>3.17669e+11</td><td>3.17669e+11</td><td>18653471415</td><td>6.2775     </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2016-01-26 </td><td>15.0405    </td><td>14.9786    </td><td>15.1376    </td><td>14.4841    </td><td>14.7137    </td><td>38279766   </td><td>643611762  </td><td>-0.3268    </td><td>-2.1726    </td><td>16.8134    </td><td>0.2052     </td><td>3.10767e+11</td><td>3.10767e+11</td><td>18653471415</td><td>6.1412     </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2016-01-27 </td><td>14.7137    </td><td>14.7932    </td><td>14.9963    </td><td>14.5812    </td><td>14.7314    </td><td>44291307   </td><td>742640743  </td><td> 0.0177    </td><td> 0.1200    </td><td>16.7672    </td><td>0.2374     </td><td>3.11140e+11</td><td>3.11140e+11</td><td>18653471415</td><td>6.1485     </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2016-01-28 </td><td>14.7314    </td><td>14.8020    </td><td>14.8550    </td><td>14.0248    </td><td>14.6430    </td><td>38902180   </td><td>643984171  </td><td>-0.0883    </td><td>-0.5995    </td><td>16.5539    </td><td>0.2086     </td><td>3.09275e+11</td><td>3.09275e+11</td><td>18653471415</td><td>6.1117     </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2016-01-29 </td><td>14.6430    </td><td>14.5901    </td><td>15.0581    </td><td>14.4929    </td><td>14.9257    </td><td>47429000   </td><td>799493381  </td><td> 0.2826    </td><td> 1.9300    </td><td>16.8566    </td><td>0.2543     </td><td>3.15244e+11</td><td>3.15244e+11</td><td>18653471415</td><td>6.2296     </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2016-02-01 </td><td>14.9257    </td><td>15.0051    </td><td>15.0140    </td><td>14.4929    </td><td>14.5724    </td><td>29139596   </td><td>485275132  </td><td>-0.3533    </td><td>-2.3669    </td><td>16.6535    </td><td>0.1562     </td><td>3.07782e+11</td><td>3.07782e+11</td><td>18653471415</td><td>6.0822     </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2016-02-02 </td><td>14.5724    </td><td>14.5724    </td><td>14.9610    </td><td>14.5371    </td><td>14.8020    </td><td>25380981   </td><td>425396889  </td><td> 0.2296    </td><td> 1.5758    </td><td>16.7605    </td><td>0.1361     </td><td>3.12632e+11</td><td>3.12632e+11</td><td>18653471415</td><td>6.1780     </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2016-02-03 </td><td>14.8020    </td><td>14.6607    </td><td>14.7137    </td><td>14.5282    </td><td>14.6695    </td><td>27779183   </td><td>459255616  </td><td>-0.1325    </td><td>-0.8950    </td><td>16.5324    </td><td>0.1489     </td><td>3.09834e+11</td><td>3.09834e+11</td><td>18653471415</td><td>6.1227     </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2016-02-04 </td><td>14.6695    </td><td>14.8727    </td><td>15.2966    </td><td>14.6872    </td><td>15.2789    </td><td>47162860   </td><td>799283799  </td><td> 0.6094    </td><td> 4.1541    </td><td>16.9473    </td><td>0.2528     </td><td>3.22705e+11</td><td>3.22705e+11</td><td>18653471415</td><td>6.3771     </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2016-02-05 </td><td>15.2789    </td><td>15.2259    </td><td>16.2416    </td><td>15.1465    </td><td>16.2328    </td><td>78413454   </td><td>1401156041 </td><td> 0.9538    </td><td> 6.2428    </td><td>17.8688    </td><td>0.4204     </td><td>3.42851e+11</td><td>3.42851e+11</td><td>18653471415</td><td>6.7752     </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2016-02-15 </td><td>16.2328    </td><td>15.8795    </td><td>16.3211    </td><td>15.7205    </td><td>16.2946    </td><td>67296317   </td><td>1221398339 </td><td> 0.0618    </td><td> 0.3808    </td><td>18.1496    </td><td>0.3608     </td><td>3.44157e+11</td><td>3.44157e+11</td><td>18653471415</td><td>6.8010     </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2016-03-11 </td><td>16.2946    </td><td>15.4644    </td><td>15.4821    </td><td>14.6695    </td><td>14.9875    </td><td>98240322   </td><td>1657158636 </td><td>-1.3071    </td><td>-8.0217    </td><td>16.8684    </td><td>0.5267     </td><td>3.16549e+11</td><td>3.16549e+11</td><td>18653471415</td><td>6.2554     </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2016-03-14 </td><td>14.9875    </td><td>14.9080    </td><td>15.4291    </td><td>14.8550    </td><td>14.8903    </td><td>56922239   </td><td>973317374  </td><td>-0.0971    </td><td>-0.6482    </td><td>17.0991    </td><td>0.3052     </td><td>3.14498e+11</td><td>3.14498e+11</td><td>18653471415</td><td>6.2149     </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2016-03-15 </td><td>14.8903    </td><td>14.9698    </td><td>15.1818    </td><td>14.8462    </td><td>15.0316    </td><td>37540932   </td><td>638223050  </td><td> 0.1413    </td><td> 0.9490    </td><td>17.0007    </td><td>0.2013     </td><td>3.17482e+11</td><td>3.17482e+11</td><td>18653471415</td><td>6.2739     </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2016-03-16 </td><td>15.0316    </td><td>14.9433    </td><td>15.9590    </td><td>14.9345    </td><td>15.9236    </td><td>108404378  </td><td>1924212601 </td><td> 0.8920    </td><td> 5.9342    </td><td>17.7503    </td><td>0.5811     </td><td>3.36322e+11</td><td>3.36322e+11</td><td>18653471415</td><td>6.6462     </td></tr>\n",
       "\t<tr><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2017-03-24 </td><td>15.88      </td><td>15.85      </td><td>16.00      </td><td>15.83      </td><td>15.96      </td><td>19902006   </td><td>316984958  </td><td> 0.08      </td><td> 0.5038    </td><td>15.9273    </td><td>0.0921     </td><td>3.45028e+11</td><td>3.45028e+11</td><td>21618279922</td><td>6.4978     </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2017-03-27 </td><td>15.96      </td><td>15.97      </td><td>16.13      </td><td>15.90      </td><td>16.04      </td><td>18997369   </td><td>304990151  </td><td> 0.08      </td><td> 0.5013    </td><td>16.0543    </td><td>0.0879     </td><td>3.46757e+11</td><td>3.46757e+11</td><td>21618279922</td><td>6.5304     </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2017-03-28 </td><td>16.04      </td><td>16.11      </td><td>16.13      </td><td>15.97      </td><td>16.01      </td><td>13212969   </td><td>211750766  </td><td>-0.03      </td><td>-0.1870    </td><td>16.026     </td><td>0.0611     </td><td>3.46109e+11</td><td>3.46109e+11</td><td>21618279922</td><td>6.5182     </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2017-03-29 </td><td>16.01      </td><td>16.01      </td><td>16.11      </td><td>15.80      </td><td>15.87      </td><td>23446792   </td><td>372794465  </td><td>-0.14      </td><td>-0.8745    </td><td>15.8996    </td><td>0.1085     </td><td>3.43082e+11</td><td>3.43082e+11</td><td>21618279922</td><td>6.4612     </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2017-03-30 </td><td>15.87      </td><td>15.88      </td><td>15.90      </td><td>15.72      </td><td>15.81      </td><td>23645144   </td><td>373665115  </td><td>-0.06      </td><td>-0.3781    </td><td>15.803     </td><td>0.1094     </td><td>3.41785e+11</td><td>3.41785e+11</td><td>21618279922</td><td>6.4368     </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2017-03-31 </td><td>15.81      </td><td>15.78      </td><td>16.05      </td><td>15.77      </td><td>16.01      </td><td>24187120   </td><td>385793421  </td><td> 0.20      </td><td> 1.2650    </td><td>15.9504    </td><td>0.1119     </td><td>3.46109e+11</td><td>3.46109e+11</td><td>21618279922</td><td>6.5182     </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2017-04-05 </td><td>16.01      </td><td>16.05      </td><td>16.20      </td><td>15.89      </td><td>16.16      </td><td>31036271   </td><td>499121565  </td><td> 0.15      </td><td> 0.9369    </td><td>16.0819    </td><td>0.1436     </td><td>3.49351e+11</td><td>3.49351e+11</td><td>21618279922</td><td>6.5792     </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2017-04-06 </td><td>16.16      </td><td>16.09      </td><td>16.18      </td><td>16.03      </td><td>16.10      </td><td>22335442   </td><td>359361840  </td><td>-0.06      </td><td>-0.3713    </td><td>16.0893    </td><td>0.1033     </td><td>3.48054e+11</td><td>3.48054e+11</td><td>21618279922</td><td>6.5548     </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2017-04-07 </td><td>16.10      </td><td>16.06      </td><td>16.16      </td><td>16.02      </td><td>16.10      </td><td>20126948   </td><td>323821647  </td><td> 0.00      </td><td> 0.0000    </td><td>16.089     </td><td>0.0931     </td><td>3.48054e+11</td><td>3.48054e+11</td><td>21618279922</td><td>6.5548     </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2017-04-10 </td><td>16.10      </td><td>16.12      </td><td>16.12      </td><td>15.94      </td><td>15.97      </td><td>16154024   </td><td>258662668  </td><td>-0.13      </td><td>-0.8075    </td><td>16.0123    </td><td>0.0747     </td><td>3.45244e+11</td><td>3.45244e+11</td><td>21618279922</td><td>6.5019     </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2017-04-11 </td><td>15.97      </td><td>15.97      </td><td>15.99      </td><td>15.81      </td><td>15.89      </td><td>18611375   </td><td>295381671  </td><td>-0.08      </td><td>-0.5009    </td><td>15.871     </td><td>0.0861     </td><td>3.43514e+11</td><td>3.43514e+11</td><td>21618279922</td><td>6.4693     </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2017-04-12 </td><td>15.89      </td><td>15.88      </td><td>15.96      </td><td>15.75      </td><td>15.89      </td><td>22210541   </td><td>352357729  </td><td> 0.00      </td><td> 0.0000    </td><td>15.8644    </td><td>0.1027     </td><td>3.43514e+11</td><td>3.43514e+11</td><td>21618279922</td><td>6.4693     </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2017-04-13 </td><td>15.89      </td><td>15.88      </td><td>15.89      </td><td>15.73      </td><td>15.75      </td><td>23426650   </td><td>369388222  </td><td>-0.14      </td><td>-0.8811    </td><td>15.7679    </td><td>0.1084     </td><td>3.40488e+11</td><td>3.40488e+11</td><td>21618279922</td><td>6.4123     </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2017-04-14 </td><td>15.75      </td><td>15.76      </td><td>15.78      </td><td>15.42      </td><td>15.51      </td><td>40156553   </td><td>625510632  </td><td>-0.24      </td><td>-1.5238    </td><td>15.5768    </td><td>0.1858     </td><td>3.35300e+11</td><td>3.35300e+11</td><td>21618279922</td><td>6.3146     </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2017-04-17 </td><td>15.51      </td><td>15.53      </td><td>15.60      </td><td>15.30      </td><td>15.56      </td><td>36739448   </td><td>566536789  </td><td> 0.05      </td><td> 0.3224    </td><td>15.4204    </td><td>0.1699     </td><td>3.36380e+11</td><td>3.36380e+11</td><td>21618279922</td><td>6.3350     </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2017-04-18 </td><td>15.56      </td><td>15.50      </td><td>15.52      </td><td>15.30      </td><td>15.30      </td><td>22889980   </td><td>351624622  </td><td>-0.26      </td><td>-1.6710    </td><td>15.3615    </td><td>0.1059     </td><td>3.30760e+11</td><td>3.30760e+11</td><td>21618279922</td><td>6.2291     </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2017-04-19 </td><td>15.30      </td><td>15.25      </td><td>15.27      </td><td>15.11      </td><td>15.11      </td><td>24455407   </td><td>371021507  </td><td>-0.19      </td><td>-1.2418    </td><td>15.1713    </td><td>0.1131     </td><td>3.26652e+11</td><td>3.26652e+11</td><td>21618279922</td><td>6.1518     </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2017-04-20 </td><td>15.11      </td><td>15.12      </td><td>15.14      </td><td>14.90      </td><td>14.91      </td><td>41061406   </td><td>614436383  </td><td>-0.20      </td><td>-1.3236    </td><td>14.9638    </td><td>0.1899     </td><td>3.22329e+11</td><td>3.22329e+11</td><td>21618279922</td><td>6.0703     </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2017-04-21 </td><td>14.91      </td><td>14.92      </td><td>15.07      </td><td>14.85      </td><td>15.05      </td><td>22688358   </td><td>340453104  </td><td> 0.14      </td><td> 0.9390    </td><td>15.0056    </td><td>0.1049     </td><td>3.25355e+11</td><td>3.25355e+11</td><td>21618279922</td><td>6.1273     </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2017-04-24 </td><td>15.05      </td><td>15.05      </td><td>15.11      </td><td>14.91      </td><td>15.00      </td><td>17627803   </td><td>264649933  </td><td>-0.05      </td><td>-0.3322    </td><td>15.0132    </td><td>0.0815     </td><td>3.24274e+11</td><td>3.24274e+11</td><td>21618279922</td><td>6.1070     </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2017-04-25 </td><td>15.00      </td><td>15.02      </td><td>15.10      </td><td>14.99      </td><td>15.05      </td><td>12975919   </td><td>195296862  </td><td> 0.05      </td><td> 0.3333    </td><td>15.0507    </td><td>0.06       </td><td>3.25355e+11</td><td>3.25355e+11</td><td>21618279922</td><td>6.1273     </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2017-04-26 </td><td>15.05      </td><td>15.06      </td><td>15.11      </td><td>15.00      </td><td>15.05      </td><td>14939871   </td><td>225022668  </td><td> 0.00      </td><td> 0.0000    </td><td>15.0619    </td><td>0.0691     </td><td>3.25355e+11</td><td>3.25355e+11</td><td>21618279922</td><td>6.1273     </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2017-04-27 </td><td>15.05      </td><td>15.05      </td><td>15.25      </td><td>15.03      </td><td>15.21      </td><td>22887645   </td><td>345791526  </td><td> 0.16      </td><td> 1.0631    </td><td>15.1082    </td><td>0.1059     </td><td>3.28814e+11</td><td>3.28814e+11</td><td>21618279922</td><td>6.1925     </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2017-04-28 </td><td>15.21      </td><td>15.15      </td><td>15.22      </td><td>15.08      </td><td>15.21      </td><td>15718509   </td><td>238419161  </td><td> 0.00      </td><td> 0.0000    </td><td>15.1681    </td><td>0.0727     </td><td>3.28814e+11</td><td>3.28814e+11</td><td>21618279922</td><td>6.1925     </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2017-05-02 </td><td>15.21      </td><td>15.21      </td><td>15.22      </td><td>15.13      </td><td>15.16      </td><td>12607509   </td><td>191225527  </td><td>-0.05      </td><td>-0.3287    </td><td>15.1676    </td><td>0.0583     </td><td>3.27733e+11</td><td>3.27733e+11</td><td>21618279922</td><td>6.1721     </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2017-05-03 </td><td>15.16      </td><td>15.16      </td><td>15.16      </td><td>15.05      </td><td>15.08      </td><td>14247943   </td><td>215130847  </td><td>-0.08      </td><td>-0.5277    </td><td>15.0991    </td><td>0.0659     </td><td>3.26004e+11</td><td>3.26004e+11</td><td>21618279922</td><td>6.1395     </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2017-05-04 </td><td>15.08      </td><td>15.07      </td><td>15.07      </td><td>14.90      </td><td>14.98      </td><td>19477788   </td><td>291839737  </td><td>-0.10      </td><td>-0.6631    </td><td>14.9832    </td><td>0.0901     </td><td>3.23842e+11</td><td>3.23842e+11</td><td>21618279922</td><td>6.0988     </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2017-05-05 </td><td>14.98      </td><td>14.95      </td><td>14.98      </td><td>14.52      </td><td>14.92      </td><td>40194577   </td><td>592160198  </td><td>-0.06      </td><td>-0.4005    </td><td>14.7323    </td><td>0.1859     </td><td>3.22545e+11</td><td>3.22545e+11</td><td>21618279922</td><td>6.0744     </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2017-05-08 </td><td>14.92      </td><td>14.78      </td><td>14.90      </td><td>14.51      </td><td>14.86      </td><td>43568576   </td><td>638781010  </td><td>-0.06      </td><td>-0.4021    </td><td>14.6615    </td><td>0.2015     </td><td>3.21248e+11</td><td>3.21248e+11</td><td>21618279922</td><td>6.0500     </td></tr>\n",
       "\t<tr><td>600000.SH  </td><td>浦发银行   </td><td>2017-05-09 </td><td>14.86      </td><td>14.69      </td><td>14.84      </td><td>14.66      </td><td>14.76      </td><td>19225492   </td><td>283864640  </td><td>-0.10      </td><td>-0.6729    </td><td>14.765     </td><td>0.0889     </td><td>3.19086e+11</td><td>3.19086e+11</td><td>21618279922</td><td>6.0093     </td></tr>\n",
       "</tbody>\n",
       "</table>\n"
      ],
      "text/latex": [
       "\\begin{tabular}{r|llllllllllllllllll}\n",
       " ﻿代码 & 简称 & 日期 & 前收盘价(元) & 开盘价(元) & 最高价(元) & 最低价(元) & 收盘价(元) & 成交量(股) & 成交金额(元) & 涨跌(元) & 涨跌幅(\\%) & 均价(元) & 换手率(\\%) & A股流通市值(元) & 总市值(元) & A股流通股本(股) & 市盈率\\\\\n",
       "\\hline\n",
       "\t 600000.SH   & 浦发银行    & 2016-01-04  & 16.1356     & 16.1444     & 16.1444     & 15.4997     & 15.7205     & 42240610    & 754425783   & -0.4151     & -2.5725     & 17.8602     & 0.2264      & 3.32032e+11 & 3.32032e+11 & 18653471415 & 6.5614     \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2016-01-05  & 15.7205     & 15.4644     & 15.9501     & 15.3672     & 15.8618     & 58054793    & 1034181474  &  0.1413     &  0.8989     & 17.8139     & 0.3112      & 3.35016e+11 & 3.35016e+11 & 18653471415 & 6.6204     \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2016-01-06  & 15.8618     & 15.8088     & 16.0208     & 15.6234     & 15.9855     & 46772653    & 838667398   &  0.1236     &  0.7795     & 17.9307     & 0.2507      & 3.37628e+11 & 3.37628e+11 & 18653471415 & 6.6720     \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2016-01-07  & 15.9855     & 15.7205     & 15.8088     & 15.3672     & 15.4644     & 11350479    & 199502702   & -0.5211     & -3.2597     & 17.5766     & 0.0608      & 3.26622e+11 & 3.26622e+11 & 18653471415 & 6.4545     \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2016-01-08  & 15.4644     & 15.6675     & 15.7912     & 14.9345     & 15.4467     & 71918296    & 1262105060  & -0.0177     & -0.1142     & 17.5492     & 0.3855      & 3.26249e+11 & 3.26249e+11 & 18653471415 & 6.4471     \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2016-01-11  & 15.4467     & 15.1994     & 15.4114     & 14.9786     & 15.0581     & 90177135    & 1550155933  & -0.3886     & -2.5157     & 17.1901     & 0.4834      & 3.18042e+11 & 3.18042e+11 & 18653471415 & 6.2849     \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2016-01-12  & 15.0581     & 15.1641     & 15.4732     & 15.0846     & 15.4114     & 55374454    & 964061502   &  0.3533     &  2.3460     & 17.4099     & 0.2969      & 3.25503e+11 & 3.25503e+11 & 18653471415 & 6.4324     \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2016-01-13  & 15.4114     & 15.5174     & 15.8088     & 15.3231     & 15.3584     & 47869312    & 843717365   & -0.0530     & -0.3438     & 17.6254     & 0.2566      & 3.24384e+11 & 3.24384e+11 & 18653471415 & 6.4102     \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2016-01-14  & 15.3584     & 15.0140     & 15.8883     & 14.9168     & 15.8265     & 54838833    & 966117848   &  0.4681     &  3.0477     & 17.6174     & 0.294       & 3.34270e+11 & 3.34270e+11 & 18653471415 & 6.6056     \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2016-01-15  & 15.8265     & 15.7205     & 16.0296     & 15.4732     & 15.5262     & 46723139    & 836146426   & -0.3003     & -1.8973     & 17.8958     & 0.2505      & 3.27928e+11 & 3.27928e+11 & 18653471415 & 6.4803     \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2016-01-18  & 15.5262     & 15.3937     & 15.8883     & 15.2966     & 15.6145     & 32729006    & 583291559   &  0.0883     &  0.5688     & 17.8219     & 0.1755      & 3.29793e+11 & 3.29793e+11 & 18653471415 & 6.5171     \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2016-01-19  & 15.6145     & 15.7029     & 15.7912     & 15.4556     & 15.6940     & 29807159    & 527753175   &  0.0795     &  0.5090     & 17.7056     & 0.1598      & 3.31472e+11 & 3.31472e+11 & 18653471415 & 6.5503     \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2016-01-20  & 15.6940     & 15.5527     & 15.6322     & 15.0846     & 15.2348     & 35968636    & 623546924   & -0.4593     & -2.9263     & 17.3359     & 0.1928      & 3.21772e+11 & 3.21772e+11 & 18653471415 & 6.3586     \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2016-01-21  & 15.2348     & 15.2083     & 15.4202     & 14.5724     & 14.6430     & 34197115    & 582845476   & -0.5917     & -3.8841     & 17.0437     & 0.1833      & 3.09275e+11 & 3.09275e+11 & 18653471415 & 6.1117     \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2016-01-22  & 14.6430     & 14.8727     & 15.1111     & 14.5636     & 15.0316     & 42007318    & 708179241   &  0.3886     &  2.6538     & 16.8585     & 0.2252      & 3.17482e+11 & 3.17482e+11 & 18653471415 & 6.2739     \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2016-01-25  & 15.0316     & 15.0140     & 15.1641     & 14.7667     & 15.0405     & 23558971    & 400445071   &  0.0088     &  0.0588     & 16.9976     & 0.1263      & 3.17669e+11 & 3.17669e+11 & 18653471415 & 6.2775     \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2016-01-26  & 15.0405     & 14.9786     & 15.1376     & 14.4841     & 14.7137     & 38279766    & 643611762   & -0.3268     & -2.1726     & 16.8134     & 0.2052      & 3.10767e+11 & 3.10767e+11 & 18653471415 & 6.1412     \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2016-01-27  & 14.7137     & 14.7932     & 14.9963     & 14.5812     & 14.7314     & 44291307    & 742640743   &  0.0177     &  0.1200     & 16.7672     & 0.2374      & 3.11140e+11 & 3.11140e+11 & 18653471415 & 6.1485     \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2016-01-28  & 14.7314     & 14.8020     & 14.8550     & 14.0248     & 14.6430     & 38902180    & 643984171   & -0.0883     & -0.5995     & 16.5539     & 0.2086      & 3.09275e+11 & 3.09275e+11 & 18653471415 & 6.1117     \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2016-01-29  & 14.6430     & 14.5901     & 15.0581     & 14.4929     & 14.9257     & 47429000    & 799493381   &  0.2826     &  1.9300     & 16.8566     & 0.2543      & 3.15244e+11 & 3.15244e+11 & 18653471415 & 6.2296     \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2016-02-01  & 14.9257     & 15.0051     & 15.0140     & 14.4929     & 14.5724     & 29139596    & 485275132   & -0.3533     & -2.3669     & 16.6535     & 0.1562      & 3.07782e+11 & 3.07782e+11 & 18653471415 & 6.0822     \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2016-02-02  & 14.5724     & 14.5724     & 14.9610     & 14.5371     & 14.8020     & 25380981    & 425396889   &  0.2296     &  1.5758     & 16.7605     & 0.1361      & 3.12632e+11 & 3.12632e+11 & 18653471415 & 6.1780     \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2016-02-03  & 14.8020     & 14.6607     & 14.7137     & 14.5282     & 14.6695     & 27779183    & 459255616   & -0.1325     & -0.8950     & 16.5324     & 0.1489      & 3.09834e+11 & 3.09834e+11 & 18653471415 & 6.1227     \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2016-02-04  & 14.6695     & 14.8727     & 15.2966     & 14.6872     & 15.2789     & 47162860    & 799283799   &  0.6094     &  4.1541     & 16.9473     & 0.2528      & 3.22705e+11 & 3.22705e+11 & 18653471415 & 6.3771     \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2016-02-05  & 15.2789     & 15.2259     & 16.2416     & 15.1465     & 16.2328     & 78413454    & 1401156041  &  0.9538     &  6.2428     & 17.8688     & 0.4204      & 3.42851e+11 & 3.42851e+11 & 18653471415 & 6.7752     \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2016-02-15  & 16.2328     & 15.8795     & 16.3211     & 15.7205     & 16.2946     & 67296317    & 1221398339  &  0.0618     &  0.3808     & 18.1496     & 0.3608      & 3.44157e+11 & 3.44157e+11 & 18653471415 & 6.8010     \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2016-03-11  & 16.2946     & 15.4644     & 15.4821     & 14.6695     & 14.9875     & 98240322    & 1657158636  & -1.3071     & -8.0217     & 16.8684     & 0.5267      & 3.16549e+11 & 3.16549e+11 & 18653471415 & 6.2554     \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2016-03-14  & 14.9875     & 14.9080     & 15.4291     & 14.8550     & 14.8903     & 56922239    & 973317374   & -0.0971     & -0.6482     & 17.0991     & 0.3052      & 3.14498e+11 & 3.14498e+11 & 18653471415 & 6.2149     \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2016-03-15  & 14.8903     & 14.9698     & 15.1818     & 14.8462     & 15.0316     & 37540932    & 638223050   &  0.1413     &  0.9490     & 17.0007     & 0.2013      & 3.17482e+11 & 3.17482e+11 & 18653471415 & 6.2739     \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2016-03-16  & 15.0316     & 14.9433     & 15.9590     & 14.9345     & 15.9236     & 108404378   & 1924212601  &  0.8920     &  5.9342     & 17.7503     & 0.5811      & 3.36322e+11 & 3.36322e+11 & 18653471415 & 6.6462     \\\\\n",
       "\t ... & ... & ... & ... & ... & ... & ... & ... & ... & ... & ... & ... & ... & ... & ... & ... & ... & ...\\\\\n",
       "\t 600000.SH   & 浦发银行    & 2017-03-24  & 15.88       & 15.85       & 16.00       & 15.83       & 15.96       & 19902006    & 316984958   &  0.08       &  0.5038     & 15.9273     & 0.0921      & 3.45028e+11 & 3.45028e+11 & 21618279922 & 6.4978     \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2017-03-27  & 15.96       & 15.97       & 16.13       & 15.90       & 16.04       & 18997369    & 304990151   &  0.08       &  0.5013     & 16.0543     & 0.0879      & 3.46757e+11 & 3.46757e+11 & 21618279922 & 6.5304     \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2017-03-28  & 16.04       & 16.11       & 16.13       & 15.97       & 16.01       & 13212969    & 211750766   & -0.03       & -0.1870     & 16.026      & 0.0611      & 3.46109e+11 & 3.46109e+11 & 21618279922 & 6.5182     \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2017-03-29  & 16.01       & 16.01       & 16.11       & 15.80       & 15.87       & 23446792    & 372794465   & -0.14       & -0.8745     & 15.8996     & 0.1085      & 3.43082e+11 & 3.43082e+11 & 21618279922 & 6.4612     \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2017-03-30  & 15.87       & 15.88       & 15.90       & 15.72       & 15.81       & 23645144    & 373665115   & -0.06       & -0.3781     & 15.803      & 0.1094      & 3.41785e+11 & 3.41785e+11 & 21618279922 & 6.4368     \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2017-03-31  & 15.81       & 15.78       & 16.05       & 15.77       & 16.01       & 24187120    & 385793421   &  0.20       &  1.2650     & 15.9504     & 0.1119      & 3.46109e+11 & 3.46109e+11 & 21618279922 & 6.5182     \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2017-04-05  & 16.01       & 16.05       & 16.20       & 15.89       & 16.16       & 31036271    & 499121565   &  0.15       &  0.9369     & 16.0819     & 0.1436      & 3.49351e+11 & 3.49351e+11 & 21618279922 & 6.5792     \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2017-04-06  & 16.16       & 16.09       & 16.18       & 16.03       & 16.10       & 22335442    & 359361840   & -0.06       & -0.3713     & 16.0893     & 0.1033      & 3.48054e+11 & 3.48054e+11 & 21618279922 & 6.5548     \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2017-04-07  & 16.10       & 16.06       & 16.16       & 16.02       & 16.10       & 20126948    & 323821647   &  0.00       &  0.0000     & 16.089      & 0.0931      & 3.48054e+11 & 3.48054e+11 & 21618279922 & 6.5548     \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2017-04-10  & 16.10       & 16.12       & 16.12       & 15.94       & 15.97       & 16154024    & 258662668   & -0.13       & -0.8075     & 16.0123     & 0.0747      & 3.45244e+11 & 3.45244e+11 & 21618279922 & 6.5019     \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2017-04-11  & 15.97       & 15.97       & 15.99       & 15.81       & 15.89       & 18611375    & 295381671   & -0.08       & -0.5009     & 15.871      & 0.0861      & 3.43514e+11 & 3.43514e+11 & 21618279922 & 6.4693     \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2017-04-12  & 15.89       & 15.88       & 15.96       & 15.75       & 15.89       & 22210541    & 352357729   &  0.00       &  0.0000     & 15.8644     & 0.1027      & 3.43514e+11 & 3.43514e+11 & 21618279922 & 6.4693     \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2017-04-13  & 15.89       & 15.88       & 15.89       & 15.73       & 15.75       & 23426650    & 369388222   & -0.14       & -0.8811     & 15.7679     & 0.1084      & 3.40488e+11 & 3.40488e+11 & 21618279922 & 6.4123     \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2017-04-14  & 15.75       & 15.76       & 15.78       & 15.42       & 15.51       & 40156553    & 625510632   & -0.24       & -1.5238     & 15.5768     & 0.1858      & 3.35300e+11 & 3.35300e+11 & 21618279922 & 6.3146     \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2017-04-17  & 15.51       & 15.53       & 15.60       & 15.30       & 15.56       & 36739448    & 566536789   &  0.05       &  0.3224     & 15.4204     & 0.1699      & 3.36380e+11 & 3.36380e+11 & 21618279922 & 6.3350     \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2017-04-18  & 15.56       & 15.50       & 15.52       & 15.30       & 15.30       & 22889980    & 351624622   & -0.26       & -1.6710     & 15.3615     & 0.1059      & 3.30760e+11 & 3.30760e+11 & 21618279922 & 6.2291     \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2017-04-19  & 15.30       & 15.25       & 15.27       & 15.11       & 15.11       & 24455407    & 371021507   & -0.19       & -1.2418     & 15.1713     & 0.1131      & 3.26652e+11 & 3.26652e+11 & 21618279922 & 6.1518     \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2017-04-20  & 15.11       & 15.12       & 15.14       & 14.90       & 14.91       & 41061406    & 614436383   & -0.20       & -1.3236     & 14.9638     & 0.1899      & 3.22329e+11 & 3.22329e+11 & 21618279922 & 6.0703     \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2017-04-21  & 14.91       & 14.92       & 15.07       & 14.85       & 15.05       & 22688358    & 340453104   &  0.14       &  0.9390     & 15.0056     & 0.1049      & 3.25355e+11 & 3.25355e+11 & 21618279922 & 6.1273     \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2017-04-24  & 15.05       & 15.05       & 15.11       & 14.91       & 15.00       & 17627803    & 264649933   & -0.05       & -0.3322     & 15.0132     & 0.0815      & 3.24274e+11 & 3.24274e+11 & 21618279922 & 6.1070     \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2017-04-25  & 15.00       & 15.02       & 15.10       & 14.99       & 15.05       & 12975919    & 195296862   &  0.05       &  0.3333     & 15.0507     & 0.06        & 3.25355e+11 & 3.25355e+11 & 21618279922 & 6.1273     \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2017-04-26  & 15.05       & 15.06       & 15.11       & 15.00       & 15.05       & 14939871    & 225022668   &  0.00       &  0.0000     & 15.0619     & 0.0691      & 3.25355e+11 & 3.25355e+11 & 21618279922 & 6.1273     \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2017-04-27  & 15.05       & 15.05       & 15.25       & 15.03       & 15.21       & 22887645    & 345791526   &  0.16       &  1.0631     & 15.1082     & 0.1059      & 3.28814e+11 & 3.28814e+11 & 21618279922 & 6.1925     \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2017-04-28  & 15.21       & 15.15       & 15.22       & 15.08       & 15.21       & 15718509    & 238419161   &  0.00       &  0.0000     & 15.1681     & 0.0727      & 3.28814e+11 & 3.28814e+11 & 21618279922 & 6.1925     \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2017-05-02  & 15.21       & 15.21       & 15.22       & 15.13       & 15.16       & 12607509    & 191225527   & -0.05       & -0.3287     & 15.1676     & 0.0583      & 3.27733e+11 & 3.27733e+11 & 21618279922 & 6.1721     \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2017-05-03  & 15.16       & 15.16       & 15.16       & 15.05       & 15.08       & 14247943    & 215130847   & -0.08       & -0.5277     & 15.0991     & 0.0659      & 3.26004e+11 & 3.26004e+11 & 21618279922 & 6.1395     \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2017-05-04  & 15.08       & 15.07       & 15.07       & 14.90       & 14.98       & 19477788    & 291839737   & -0.10       & -0.6631     & 14.9832     & 0.0901      & 3.23842e+11 & 3.23842e+11 & 21618279922 & 6.0988     \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2017-05-05  & 14.98       & 14.95       & 14.98       & 14.52       & 14.92       & 40194577    & 592160198   & -0.06       & -0.4005     & 14.7323     & 0.1859      & 3.22545e+11 & 3.22545e+11 & 21618279922 & 6.0744     \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2017-05-08  & 14.92       & 14.78       & 14.90       & 14.51       & 14.86       & 43568576    & 638781010   & -0.06       & -0.4021     & 14.6615     & 0.2015      & 3.21248e+11 & 3.21248e+11 & 21618279922 & 6.0500     \\\\\n",
       "\t 600000.SH   & 浦发银行    & 2017-05-09  & 14.86       & 14.69       & 14.84       & 14.66       & 14.76       & 19225492    & 283864640   & -0.10       & -0.6729     & 14.765      & 0.0889      & 3.19086e+11 & 3.19086e+11 & 21618279922 & 6.0093     \\\\\n",
       "\\end{tabular}\n"
      ],
      "text/markdown": [
       "\n",
       "﻿代码 | 简称 | 日期 | 前收盘价(元) | 开盘价(元) | 最高价(元) | 最低价(元) | 收盘价(元) | 成交量(股) | 成交金额(元) | 涨跌(元) | 涨跌幅(%) | 均价(元) | 换手率(%) | A股流通市值(元) | 总市值(元) | A股流通股本(股) | 市盈率 | \n",
       "|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|\n",
       "| 600000.SH   | 浦发银行    | 2016-01-04  | 16.1356     | 16.1444     | 16.1444     | 15.4997     | 15.7205     | 42240610    | 754425783   | -0.4151     | -2.5725     | 17.8602     | 0.2264      | 3.32032e+11 | 3.32032e+11 | 18653471415 | 6.5614      | \n",
       "| 600000.SH   | 浦发银行    | 2016-01-05  | 15.7205     | 15.4644     | 15.9501     | 15.3672     | 15.8618     | 58054793    | 1034181474  |  0.1413     |  0.8989     | 17.8139     | 0.3112      | 3.35016e+11 | 3.35016e+11 | 18653471415 | 6.6204      | \n",
       "| 600000.SH   | 浦发银行    | 2016-01-06  | 15.8618     | 15.8088     | 16.0208     | 15.6234     | 15.9855     | 46772653    | 838667398   |  0.1236     |  0.7795     | 17.9307     | 0.2507      | 3.37628e+11 | 3.37628e+11 | 18653471415 | 6.6720      | \n",
       "| 600000.SH   | 浦发银行    | 2016-01-07  | 15.9855     | 15.7205     | 15.8088     | 15.3672     | 15.4644     | 11350479    | 199502702   | -0.5211     | -3.2597     | 17.5766     | 0.0608      | 3.26622e+11 | 3.26622e+11 | 18653471415 | 6.4545      | \n",
       "| 600000.SH   | 浦发银行    | 2016-01-08  | 15.4644     | 15.6675     | 15.7912     | 14.9345     | 15.4467     | 71918296    | 1262105060  | -0.0177     | -0.1142     | 17.5492     | 0.3855      | 3.26249e+11 | 3.26249e+11 | 18653471415 | 6.4471      | \n",
       "| 600000.SH   | 浦发银行    | 2016-01-11  | 15.4467     | 15.1994     | 15.4114     | 14.9786     | 15.0581     | 90177135    | 1550155933  | -0.3886     | -2.5157     | 17.1901     | 0.4834      | 3.18042e+11 | 3.18042e+11 | 18653471415 | 6.2849      | \n",
       "| 600000.SH   | 浦发银行    | 2016-01-12  | 15.0581     | 15.1641     | 15.4732     | 15.0846     | 15.4114     | 55374454    | 964061502   |  0.3533     |  2.3460     | 17.4099     | 0.2969      | 3.25503e+11 | 3.25503e+11 | 18653471415 | 6.4324      | \n",
       "| 600000.SH   | 浦发银行    | 2016-01-13  | 15.4114     | 15.5174     | 15.8088     | 15.3231     | 15.3584     | 47869312    | 843717365   | -0.0530     | -0.3438     | 17.6254     | 0.2566      | 3.24384e+11 | 3.24384e+11 | 18653471415 | 6.4102      | \n",
       "| 600000.SH   | 浦发银行    | 2016-01-14  | 15.3584     | 15.0140     | 15.8883     | 14.9168     | 15.8265     | 54838833    | 966117848   |  0.4681     |  3.0477     | 17.6174     | 0.294       | 3.34270e+11 | 3.34270e+11 | 18653471415 | 6.6056      | \n",
       "| 600000.SH   | 浦发银行    | 2016-01-15  | 15.8265     | 15.7205     | 16.0296     | 15.4732     | 15.5262     | 46723139    | 836146426   | -0.3003     | -1.8973     | 17.8958     | 0.2505      | 3.27928e+11 | 3.27928e+11 | 18653471415 | 6.4803      | \n",
       "| 600000.SH   | 浦发银行    | 2016-01-18  | 15.5262     | 15.3937     | 15.8883     | 15.2966     | 15.6145     | 32729006    | 583291559   |  0.0883     |  0.5688     | 17.8219     | 0.1755      | 3.29793e+11 | 3.29793e+11 | 18653471415 | 6.5171      | \n",
       "| 600000.SH   | 浦发银行    | 2016-01-19  | 15.6145     | 15.7029     | 15.7912     | 15.4556     | 15.6940     | 29807159    | 527753175   |  0.0795     |  0.5090     | 17.7056     | 0.1598      | 3.31472e+11 | 3.31472e+11 | 18653471415 | 6.5503      | \n",
       "| 600000.SH   | 浦发银行    | 2016-01-20  | 15.6940     | 15.5527     | 15.6322     | 15.0846     | 15.2348     | 35968636    | 623546924   | -0.4593     | -2.9263     | 17.3359     | 0.1928      | 3.21772e+11 | 3.21772e+11 | 18653471415 | 6.3586      | \n",
       "| 600000.SH   | 浦发银行    | 2016-01-21  | 15.2348     | 15.2083     | 15.4202     | 14.5724     | 14.6430     | 34197115    | 582845476   | -0.5917     | -3.8841     | 17.0437     | 0.1833      | 3.09275e+11 | 3.09275e+11 | 18653471415 | 6.1117      | \n",
       "| 600000.SH   | 浦发银行    | 2016-01-22  | 14.6430     | 14.8727     | 15.1111     | 14.5636     | 15.0316     | 42007318    | 708179241   |  0.3886     |  2.6538     | 16.8585     | 0.2252      | 3.17482e+11 | 3.17482e+11 | 18653471415 | 6.2739      | \n",
       "| 600000.SH   | 浦发银行    | 2016-01-25  | 15.0316     | 15.0140     | 15.1641     | 14.7667     | 15.0405     | 23558971    | 400445071   |  0.0088     |  0.0588     | 16.9976     | 0.1263      | 3.17669e+11 | 3.17669e+11 | 18653471415 | 6.2775      | \n",
       "| 600000.SH   | 浦发银行    | 2016-01-26  | 15.0405     | 14.9786     | 15.1376     | 14.4841     | 14.7137     | 38279766    | 643611762   | -0.3268     | -2.1726     | 16.8134     | 0.2052      | 3.10767e+11 | 3.10767e+11 | 18653471415 | 6.1412      | \n",
       "| 600000.SH   | 浦发银行    | 2016-01-27  | 14.7137     | 14.7932     | 14.9963     | 14.5812     | 14.7314     | 44291307    | 742640743   |  0.0177     |  0.1200     | 16.7672     | 0.2374      | 3.11140e+11 | 3.11140e+11 | 18653471415 | 6.1485      | \n",
       "| 600000.SH   | 浦发银行    | 2016-01-28  | 14.7314     | 14.8020     | 14.8550     | 14.0248     | 14.6430     | 38902180    | 643984171   | -0.0883     | -0.5995     | 16.5539     | 0.2086      | 3.09275e+11 | 3.09275e+11 | 18653471415 | 6.1117      | \n",
       "| 600000.SH   | 浦发银行    | 2016-01-29  | 14.6430     | 14.5901     | 15.0581     | 14.4929     | 14.9257     | 47429000    | 799493381   |  0.2826     |  1.9300     | 16.8566     | 0.2543      | 3.15244e+11 | 3.15244e+11 | 18653471415 | 6.2296      | \n",
       "| 600000.SH   | 浦发银行    | 2016-02-01  | 14.9257     | 15.0051     | 15.0140     | 14.4929     | 14.5724     | 29139596    | 485275132   | -0.3533     | -2.3669     | 16.6535     | 0.1562      | 3.07782e+11 | 3.07782e+11 | 18653471415 | 6.0822      | \n",
       "| 600000.SH   | 浦发银行    | 2016-02-02  | 14.5724     | 14.5724     | 14.9610     | 14.5371     | 14.8020     | 25380981    | 425396889   |  0.2296     |  1.5758     | 16.7605     | 0.1361      | 3.12632e+11 | 3.12632e+11 | 18653471415 | 6.1780      | \n",
       "| 600000.SH   | 浦发银行    | 2016-02-03  | 14.8020     | 14.6607     | 14.7137     | 14.5282     | 14.6695     | 27779183    | 459255616   | -0.1325     | -0.8950     | 16.5324     | 0.1489      | 3.09834e+11 | 3.09834e+11 | 18653471415 | 6.1227      | \n",
       "| 600000.SH   | 浦发银行    | 2016-02-04  | 14.6695     | 14.8727     | 15.2966     | 14.6872     | 15.2789     | 47162860    | 799283799   |  0.6094     |  4.1541     | 16.9473     | 0.2528      | 3.22705e+11 | 3.22705e+11 | 18653471415 | 6.3771      | \n",
       "| 600000.SH   | 浦发银行    | 2016-02-05  | 15.2789     | 15.2259     | 16.2416     | 15.1465     | 16.2328     | 78413454    | 1401156041  |  0.9538     |  6.2428     | 17.8688     | 0.4204      | 3.42851e+11 | 3.42851e+11 | 18653471415 | 6.7752      | \n",
       "| 600000.SH   | 浦发银行    | 2016-02-15  | 16.2328     | 15.8795     | 16.3211     | 15.7205     | 16.2946     | 67296317    | 1221398339  |  0.0618     |  0.3808     | 18.1496     | 0.3608      | 3.44157e+11 | 3.44157e+11 | 18653471415 | 6.8010      | \n",
       "| 600000.SH   | 浦发银行    | 2016-03-11  | 16.2946     | 15.4644     | 15.4821     | 14.6695     | 14.9875     | 98240322    | 1657158636  | -1.3071     | -8.0217     | 16.8684     | 0.5267      | 3.16549e+11 | 3.16549e+11 | 18653471415 | 6.2554      | \n",
       "| 600000.SH   | 浦发银行    | 2016-03-14  | 14.9875     | 14.9080     | 15.4291     | 14.8550     | 14.8903     | 56922239    | 973317374   | -0.0971     | -0.6482     | 17.0991     | 0.3052      | 3.14498e+11 | 3.14498e+11 | 18653471415 | 6.2149      | \n",
       "| 600000.SH   | 浦发银行    | 2016-03-15  | 14.8903     | 14.9698     | 15.1818     | 14.8462     | 15.0316     | 37540932    | 638223050   |  0.1413     |  0.9490     | 17.0007     | 0.2013      | 3.17482e+11 | 3.17482e+11 | 18653471415 | 6.2739      | \n",
       "| 600000.SH   | 浦发银行    | 2016-03-16  | 15.0316     | 14.9433     | 15.9590     | 14.9345     | 15.9236     | 108404378   | 1924212601  |  0.8920     |  5.9342     | 17.7503     | 0.5811      | 3.36322e+11 | 3.36322e+11 | 18653471415 | 6.6462      | \n",
       "| ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | \n",
       "| 600000.SH   | 浦发银行    | 2017-03-24  | 15.88       | 15.85       | 16.00       | 15.83       | 15.96       | 19902006    | 316984958   |  0.08       |  0.5038     | 15.9273     | 0.0921      | 3.45028e+11 | 3.45028e+11 | 21618279922 | 6.4978      | \n",
       "| 600000.SH   | 浦发银行    | 2017-03-27  | 15.96       | 15.97       | 16.13       | 15.90       | 16.04       | 18997369    | 304990151   |  0.08       |  0.5013     | 16.0543     | 0.0879      | 3.46757e+11 | 3.46757e+11 | 21618279922 | 6.5304      | \n",
       "| 600000.SH   | 浦发银行    | 2017-03-28  | 16.04       | 16.11       | 16.13       | 15.97       | 16.01       | 13212969    | 211750766   | -0.03       | -0.1870     | 16.026      | 0.0611      | 3.46109e+11 | 3.46109e+11 | 21618279922 | 6.5182      | \n",
       "| 600000.SH   | 浦发银行    | 2017-03-29  | 16.01       | 16.01       | 16.11       | 15.80       | 15.87       | 23446792    | 372794465   | -0.14       | -0.8745     | 15.8996     | 0.1085      | 3.43082e+11 | 3.43082e+11 | 21618279922 | 6.4612      | \n",
       "| 600000.SH   | 浦发银行    | 2017-03-30  | 15.87       | 15.88       | 15.90       | 15.72       | 15.81       | 23645144    | 373665115   | -0.06       | -0.3781     | 15.803      | 0.1094      | 3.41785e+11 | 3.41785e+11 | 21618279922 | 6.4368      | \n",
       "| 600000.SH   | 浦发银行    | 2017-03-31  | 15.81       | 15.78       | 16.05       | 15.77       | 16.01       | 24187120    | 385793421   |  0.20       |  1.2650     | 15.9504     | 0.1119      | 3.46109e+11 | 3.46109e+11 | 21618279922 | 6.5182      | \n",
       "| 600000.SH   | 浦发银行    | 2017-04-05  | 16.01       | 16.05       | 16.20       | 15.89       | 16.16       | 31036271    | 499121565   |  0.15       |  0.9369     | 16.0819     | 0.1436      | 3.49351e+11 | 3.49351e+11 | 21618279922 | 6.5792      | \n",
       "| 600000.SH   | 浦发银行    | 2017-04-06  | 16.16       | 16.09       | 16.18       | 16.03       | 16.10       | 22335442    | 359361840   | -0.06       | -0.3713     | 16.0893     | 0.1033      | 3.48054e+11 | 3.48054e+11 | 21618279922 | 6.5548      | \n",
       "| 600000.SH   | 浦发银行    | 2017-04-07  | 16.10       | 16.06       | 16.16       | 16.02       | 16.10       | 20126948    | 323821647   |  0.00       |  0.0000     | 16.089      | 0.0931      | 3.48054e+11 | 3.48054e+11 | 21618279922 | 6.5548      | \n",
       "| 600000.SH   | 浦发银行    | 2017-04-10  | 16.10       | 16.12       | 16.12       | 15.94       | 15.97       | 16154024    | 258662668   | -0.13       | -0.8075     | 16.0123     | 0.0747      | 3.45244e+11 | 3.45244e+11 | 21618279922 | 6.5019      | \n",
       "| 600000.SH   | 浦发银行    | 2017-04-11  | 15.97       | 15.97       | 15.99       | 15.81       | 15.89       | 18611375    | 295381671   | -0.08       | -0.5009     | 15.871      | 0.0861      | 3.43514e+11 | 3.43514e+11 | 21618279922 | 6.4693      | \n",
       "| 600000.SH   | 浦发银行    | 2017-04-12  | 15.89       | 15.88       | 15.96       | 15.75       | 15.89       | 22210541    | 352357729   |  0.00       |  0.0000     | 15.8644     | 0.1027      | 3.43514e+11 | 3.43514e+11 | 21618279922 | 6.4693      | \n",
       "| 600000.SH   | 浦发银行    | 2017-04-13  | 15.89       | 15.88       | 15.89       | 15.73       | 15.75       | 23426650    | 369388222   | -0.14       | -0.8811     | 15.7679     | 0.1084      | 3.40488e+11 | 3.40488e+11 | 21618279922 | 6.4123      | \n",
       "| 600000.SH   | 浦发银行    | 2017-04-14  | 15.75       | 15.76       | 15.78       | 15.42       | 15.51       | 40156553    | 625510632   | -0.24       | -1.5238     | 15.5768     | 0.1858      | 3.35300e+11 | 3.35300e+11 | 21618279922 | 6.3146      | \n",
       "| 600000.SH   | 浦发银行    | 2017-04-17  | 15.51       | 15.53       | 15.60       | 15.30       | 15.56       | 36739448    | 566536789   |  0.05       |  0.3224     | 15.4204     | 0.1699      | 3.36380e+11 | 3.36380e+11 | 21618279922 | 6.3350      | \n",
       "| 600000.SH   | 浦发银行    | 2017-04-18  | 15.56       | 15.50       | 15.52       | 15.30       | 15.30       | 22889980    | 351624622   | -0.26       | -1.6710     | 15.3615     | 0.1059      | 3.30760e+11 | 3.30760e+11 | 21618279922 | 6.2291      | \n",
       "| 600000.SH   | 浦发银行    | 2017-04-19  | 15.30       | 15.25       | 15.27       | 15.11       | 15.11       | 24455407    | 371021507   | -0.19       | -1.2418     | 15.1713     | 0.1131      | 3.26652e+11 | 3.26652e+11 | 21618279922 | 6.1518      | \n",
       "| 600000.SH   | 浦发银行    | 2017-04-20  | 15.11       | 15.12       | 15.14       | 14.90       | 14.91       | 41061406    | 614436383   | -0.20       | -1.3236     | 14.9638     | 0.1899      | 3.22329e+11 | 3.22329e+11 | 21618279922 | 6.0703      | \n",
       "| 600000.SH   | 浦发银行    | 2017-04-21  | 14.91       | 14.92       | 15.07       | 14.85       | 15.05       | 22688358    | 340453104   |  0.14       |  0.9390     | 15.0056     | 0.1049      | 3.25355e+11 | 3.25355e+11 | 21618279922 | 6.1273      | \n",
       "| 600000.SH   | 浦发银行    | 2017-04-24  | 15.05       | 15.05       | 15.11       | 14.91       | 15.00       | 17627803    | 264649933   | -0.05       | -0.3322     | 15.0132     | 0.0815      | 3.24274e+11 | 3.24274e+11 | 21618279922 | 6.1070      | \n",
       "| 600000.SH   | 浦发银行    | 2017-04-25  | 15.00       | 15.02       | 15.10       | 14.99       | 15.05       | 12975919    | 195296862   |  0.05       |  0.3333     | 15.0507     | 0.06        | 3.25355e+11 | 3.25355e+11 | 21618279922 | 6.1273      | \n",
       "| 600000.SH   | 浦发银行    | 2017-04-26  | 15.05       | 15.06       | 15.11       | 15.00       | 15.05       | 14939871    | 225022668   |  0.00       |  0.0000     | 15.0619     | 0.0691      | 3.25355e+11 | 3.25355e+11 | 21618279922 | 6.1273      | \n",
       "| 600000.SH   | 浦发银行    | 2017-04-27  | 15.05       | 15.05       | 15.25       | 15.03       | 15.21       | 22887645    | 345791526   |  0.16       |  1.0631     | 15.1082     | 0.1059      | 3.28814e+11 | 3.28814e+11 | 21618279922 | 6.1925      | \n",
       "| 600000.SH   | 浦发银行    | 2017-04-28  | 15.21       | 15.15       | 15.22       | 15.08       | 15.21       | 15718509    | 238419161   |  0.00       |  0.0000     | 15.1681     | 0.0727      | 3.28814e+11 | 3.28814e+11 | 21618279922 | 6.1925      | \n",
       "| 600000.SH   | 浦发银行    | 2017-05-02  | 15.21       | 15.21       | 15.22       | 15.13       | 15.16       | 12607509    | 191225527   | -0.05       | -0.3287     | 15.1676     | 0.0583      | 3.27733e+11 | 3.27733e+11 | 21618279922 | 6.1721      | \n",
       "| 600000.SH   | 浦发银行    | 2017-05-03  | 15.16       | 15.16       | 15.16       | 15.05       | 15.08       | 14247943    | 215130847   | -0.08       | -0.5277     | 15.0991     | 0.0659      | 3.26004e+11 | 3.26004e+11 | 21618279922 | 6.1395      | \n",
       "| 600000.SH   | 浦发银行    | 2017-05-04  | 15.08       | 15.07       | 15.07       | 14.90       | 14.98       | 19477788    | 291839737   | -0.10       | -0.6631     | 14.9832     | 0.0901      | 3.23842e+11 | 3.23842e+11 | 21618279922 | 6.0988      | \n",
       "| 600000.SH   | 浦发银行    | 2017-05-05  | 14.98       | 14.95       | 14.98       | 14.52       | 14.92       | 40194577    | 592160198   | -0.06       | -0.4005     | 14.7323     | 0.1859      | 3.22545e+11 | 3.22545e+11 | 21618279922 | 6.0744      | \n",
       "| 600000.SH   | 浦发银行    | 2017-05-08  | 14.92       | 14.78       | 14.90       | 14.51       | 14.86       | 43568576    | 638781010   | -0.06       | -0.4021     | 14.6615     | 0.2015      | 3.21248e+11 | 3.21248e+11 | 21618279922 | 6.0500      | \n",
       "| 600000.SH   | 浦发银行    | 2017-05-09  | 14.86       | 14.69       | 14.84       | 14.66       | 14.76       | 19225492    | 283864640   | -0.10       | -0.6729     | 14.765      | 0.0889      | 3.19086e+11 | 3.19086e+11 | 21618279922 | 6.0093      | \n",
       "\n",
       "\n"
      ],
      "text/plain": [
       "    ﻿代码      简称     日期       前收盘价(元) 开盘价(元) 最高价(元) 最低价(元)\n",
       "1   600000.SH 浦发银行 2016-01-04 16.1356      16.1444    16.1444    15.4997   \n",
       "2   600000.SH 浦发银行 2016-01-05 15.7205      15.4644    15.9501    15.3672   \n",
       "3   600000.SH 浦发银行 2016-01-06 15.8618      15.8088    16.0208    15.6234   \n",
       "4   600000.SH 浦发银行 2016-01-07 15.9855      15.7205    15.8088    15.3672   \n",
       "5   600000.SH 浦发银行 2016-01-08 15.4644      15.6675    15.7912    14.9345   \n",
       "6   600000.SH 浦发银行 2016-01-11 15.4467      15.1994    15.4114    14.9786   \n",
       "7   600000.SH 浦发银行 2016-01-12 15.0581      15.1641    15.4732    15.0846   \n",
       "8   600000.SH 浦发银行 2016-01-13 15.4114      15.5174    15.8088    15.3231   \n",
       "9   600000.SH 浦发银行 2016-01-14 15.3584      15.0140    15.8883    14.9168   \n",
       "10  600000.SH 浦发银行 2016-01-15 15.8265      15.7205    16.0296    15.4732   \n",
       "11  600000.SH 浦发银行 2016-01-18 15.5262      15.3937    15.8883    15.2966   \n",
       "12  600000.SH 浦发银行 2016-01-19 15.6145      15.7029    15.7912    15.4556   \n",
       "13  600000.SH 浦发银行 2016-01-20 15.6940      15.5527    15.6322    15.0846   \n",
       "14  600000.SH 浦发银行 2016-01-21 15.2348      15.2083    15.4202    14.5724   \n",
       "15  600000.SH 浦发银行 2016-01-22 14.6430      14.8727    15.1111    14.5636   \n",
       "16  600000.SH 浦发银行 2016-01-25 15.0316      15.0140    15.1641    14.7667   \n",
       "17  600000.SH 浦发银行 2016-01-26 15.0405      14.9786    15.1376    14.4841   \n",
       "18  600000.SH 浦发银行 2016-01-27 14.7137      14.7932    14.9963    14.5812   \n",
       "19  600000.SH 浦发银行 2016-01-28 14.7314      14.8020    14.8550    14.0248   \n",
       "20  600000.SH 浦发银行 2016-01-29 14.6430      14.5901    15.0581    14.4929   \n",
       "21  600000.SH 浦发银行 2016-02-01 14.9257      15.0051    15.0140    14.4929   \n",
       "22  600000.SH 浦发银行 2016-02-02 14.5724      14.5724    14.9610    14.5371   \n",
       "23  600000.SH 浦发银行 2016-02-03 14.8020      14.6607    14.7137    14.5282   \n",
       "24  600000.SH 浦发银行 2016-02-04 14.6695      14.8727    15.2966    14.6872   \n",
       "25  600000.SH 浦发银行 2016-02-05 15.2789      15.2259    16.2416    15.1465   \n",
       "26  600000.SH 浦发银行 2016-02-15 16.2328      15.8795    16.3211    15.7205   \n",
       "27  600000.SH 浦发银行 2016-03-11 16.2946      15.4644    15.4821    14.6695   \n",
       "28  600000.SH 浦发银行 2016-03-14 14.9875      14.9080    15.4291    14.8550   \n",
       "29  600000.SH 浦发银行 2016-03-15 14.8903      14.9698    15.1818    14.8462   \n",
       "30  600000.SH 浦发银行 2016-03-16 15.0316      14.9433    15.9590    14.9345   \n",
       "... ...       ...      ...        ...          ...        ...        ...       \n",
       "280 600000.SH 浦发银行 2017-03-24 15.88        15.85      16.00      15.83     \n",
       "281 600000.SH 浦发银行 2017-03-27 15.96        15.97      16.13      15.90     \n",
       "282 600000.SH 浦发银行 2017-03-28 16.04        16.11      16.13      15.97     \n",
       "283 600000.SH 浦发银行 2017-03-29 16.01        16.01      16.11      15.80     \n",
       "284 600000.SH 浦发银行 2017-03-30 15.87        15.88      15.90      15.72     \n",
       "285 600000.SH 浦发银行 2017-03-31 15.81        15.78      16.05      15.77     \n",
       "286 600000.SH 浦发银行 2017-04-05 16.01        16.05      16.20      15.89     \n",
       "287 600000.SH 浦发银行 2017-04-06 16.16        16.09      16.18      16.03     \n",
       "288 600000.SH 浦发银行 2017-04-07 16.10        16.06      16.16      16.02     \n",
       "289 600000.SH 浦发银行 2017-04-10 16.10        16.12      16.12      15.94     \n",
       "290 600000.SH 浦发银行 2017-04-11 15.97        15.97      15.99      15.81     \n",
       "291 600000.SH 浦发银行 2017-04-12 15.89        15.88      15.96      15.75     \n",
       "292 600000.SH 浦发银行 2017-04-13 15.89        15.88      15.89      15.73     \n",
       "293 600000.SH 浦发银行 2017-04-14 15.75        15.76      15.78      15.42     \n",
       "294 600000.SH 浦发银行 2017-04-17 15.51        15.53      15.60      15.30     \n",
       "295 600000.SH 浦发银行 2017-04-18 15.56        15.50      15.52      15.30     \n",
       "296 600000.SH 浦发银行 2017-04-19 15.30        15.25      15.27      15.11     \n",
       "297 600000.SH 浦发银行 2017-04-20 15.11        15.12      15.14      14.90     \n",
       "298 600000.SH 浦发银行 2017-04-21 14.91        14.92      15.07      14.85     \n",
       "299 600000.SH 浦发银行 2017-04-24 15.05        15.05      15.11      14.91     \n",
       "300 600000.SH 浦发银行 2017-04-25 15.00        15.02      15.10      14.99     \n",
       "301 600000.SH 浦发银行 2017-04-26 15.05        15.06      15.11      15.00     \n",
       "302 600000.SH 浦发银行 2017-04-27 15.05        15.05      15.25      15.03     \n",
       "303 600000.SH 浦发银行 2017-04-28 15.21        15.15      15.22      15.08     \n",
       "304 600000.SH 浦发银行 2017-05-02 15.21        15.21      15.22      15.13     \n",
       "305 600000.SH 浦发银行 2017-05-03 15.16        15.16      15.16      15.05     \n",
       "306 600000.SH 浦发银行 2017-05-04 15.08        15.07      15.07      14.90     \n",
       "307 600000.SH 浦发银行 2017-05-05 14.98        14.95      14.98      14.52     \n",
       "308 600000.SH 浦发银行 2017-05-08 14.92        14.78      14.90      14.51     \n",
       "309 600000.SH 浦发银行 2017-05-09 14.86        14.69      14.84      14.66     \n",
       "    收盘价(元) 成交量(股) 成交金额(元) 涨跌(元) 涨跌幅(%) 均价(元) 换手率(%)\n",
       "1   15.7205    42240610   754425783    -0.4151  -2.5725   17.8602  0.2264   \n",
       "2   15.8618    58054793   1034181474    0.1413   0.8989   17.8139  0.3112   \n",
       "3   15.9855    46772653   838667398     0.1236   0.7795   17.9307  0.2507   \n",
       "4   15.4644    11350479   199502702    -0.5211  -3.2597   17.5766  0.0608   \n",
       "5   15.4467    71918296   1262105060   -0.0177  -0.1142   17.5492  0.3855   \n",
       "6   15.0581    90177135   1550155933   -0.3886  -2.5157   17.1901  0.4834   \n",
       "7   15.4114    55374454   964061502     0.3533   2.3460   17.4099  0.2969   \n",
       "8   15.3584    47869312   843717365    -0.0530  -0.3438   17.6254  0.2566   \n",
       "9   15.8265    54838833   966117848     0.4681   3.0477   17.6174  0.294    \n",
       "10  15.5262    46723139   836146426    -0.3003  -1.8973   17.8958  0.2505   \n",
       "11  15.6145    32729006   583291559     0.0883   0.5688   17.8219  0.1755   \n",
       "12  15.6940    29807159   527753175     0.0795   0.5090   17.7056  0.1598   \n",
       "13  15.2348    35968636   623546924    -0.4593  -2.9263   17.3359  0.1928   \n",
       "14  14.6430    34197115   582845476    -0.5917  -3.8841   17.0437  0.1833   \n",
       "15  15.0316    42007318   708179241     0.3886   2.6538   16.8585  0.2252   \n",
       "16  15.0405    23558971   400445071     0.0088   0.0588   16.9976  0.1263   \n",
       "17  14.7137    38279766   643611762    -0.3268  -2.1726   16.8134  0.2052   \n",
       "18  14.7314    44291307   742640743     0.0177   0.1200   16.7672  0.2374   \n",
       "19  14.6430    38902180   643984171    -0.0883  -0.5995   16.5539  0.2086   \n",
       "20  14.9257    47429000   799493381     0.2826   1.9300   16.8566  0.2543   \n",
       "21  14.5724    29139596   485275132    -0.3533  -2.3669   16.6535  0.1562   \n",
       "22  14.8020    25380981   425396889     0.2296   1.5758   16.7605  0.1361   \n",
       "23  14.6695    27779183   459255616    -0.1325  -0.8950   16.5324  0.1489   \n",
       "24  15.2789    47162860   799283799     0.6094   4.1541   16.9473  0.2528   \n",
       "25  16.2328    78413454   1401156041    0.9538   6.2428   17.8688  0.4204   \n",
       "26  16.2946    67296317   1221398339    0.0618   0.3808   18.1496  0.3608   \n",
       "27  14.9875    98240322   1657158636   -1.3071  -8.0217   16.8684  0.5267   \n",
       "28  14.8903    56922239   973317374    -0.0971  -0.6482   17.0991  0.3052   \n",
       "29  15.0316    37540932   638223050     0.1413   0.9490   17.0007  0.2013   \n",
       "30  15.9236    108404378  1924212601    0.8920   5.9342   17.7503  0.5811   \n",
       "... ...        ...        ...          ...      ...       ...      ...      \n",
       "280 15.96      19902006   316984958     0.08     0.5038   15.9273  0.0921   \n",
       "281 16.04      18997369   304990151     0.08     0.5013   16.0543  0.0879   \n",
       "282 16.01      13212969   211750766    -0.03    -0.1870   16.026   0.0611   \n",
       "283 15.87      23446792   372794465    -0.14    -0.8745   15.8996  0.1085   \n",
       "284 15.81      23645144   373665115    -0.06    -0.3781   15.803   0.1094   \n",
       "285 16.01      24187120   385793421     0.20     1.2650   15.9504  0.1119   \n",
       "286 16.16      31036271   499121565     0.15     0.9369   16.0819  0.1436   \n",
       "287 16.10      22335442   359361840    -0.06    -0.3713   16.0893  0.1033   \n",
       "288 16.10      20126948   323821647     0.00     0.0000   16.089   0.0931   \n",
       "289 15.97      16154024   258662668    -0.13    -0.8075   16.0123  0.0747   \n",
       "290 15.89      18611375   295381671    -0.08    -0.5009   15.871   0.0861   \n",
       "291 15.89      22210541   352357729     0.00     0.0000   15.8644  0.1027   \n",
       "292 15.75      23426650   369388222    -0.14    -0.8811   15.7679  0.1084   \n",
       "293 15.51      40156553   625510632    -0.24    -1.5238   15.5768  0.1858   \n",
       "294 15.56      36739448   566536789     0.05     0.3224   15.4204  0.1699   \n",
       "295 15.30      22889980   351624622    -0.26    -1.6710   15.3615  0.1059   \n",
       "296 15.11      24455407   371021507    -0.19    -1.2418   15.1713  0.1131   \n",
       "297 14.91      41061406   614436383    -0.20    -1.3236   14.9638  0.1899   \n",
       "298 15.05      22688358   340453104     0.14     0.9390   15.0056  0.1049   \n",
       "299 15.00      17627803   264649933    -0.05    -0.3322   15.0132  0.0815   \n",
       "300 15.05      12975919   195296862     0.05     0.3333   15.0507  0.06     \n",
       "301 15.05      14939871   225022668     0.00     0.0000   15.0619  0.0691   \n",
       "302 15.21      22887645   345791526     0.16     1.0631   15.1082  0.1059   \n",
       "303 15.21      15718509   238419161     0.00     0.0000   15.1681  0.0727   \n",
       "304 15.16      12607509   191225527    -0.05    -0.3287   15.1676  0.0583   \n",
       "305 15.08      14247943   215130847    -0.08    -0.5277   15.0991  0.0659   \n",
       "306 14.98      19477788   291839737    -0.10    -0.6631   14.9832  0.0901   \n",
       "307 14.92      40194577   592160198    -0.06    -0.4005   14.7323  0.1859   \n",
       "308 14.86      43568576   638781010    -0.06    -0.4021   14.6615  0.2015   \n",
       "309 14.76      19225492   283864640    -0.10    -0.6729   14.765   0.0889   \n",
       "    A股流通市值(元) 总市值(元)  A股流通股本(股) 市盈率\n",
       "1   3.32032e+11     3.32032e+11 18653471415     6.5614\n",
       "2   3.35016e+11     3.35016e+11 18653471415     6.6204\n",
       "3   3.37628e+11     3.37628e+11 18653471415     6.6720\n",
       "4   3.26622e+11     3.26622e+11 18653471415     6.4545\n",
       "5   3.26249e+11     3.26249e+11 18653471415     6.4471\n",
       "6   3.18042e+11     3.18042e+11 18653471415     6.2849\n",
       "7   3.25503e+11     3.25503e+11 18653471415     6.4324\n",
       "8   3.24384e+11     3.24384e+11 18653471415     6.4102\n",
       "9   3.34270e+11     3.34270e+11 18653471415     6.6056\n",
       "10  3.27928e+11     3.27928e+11 18653471415     6.4803\n",
       "11  3.29793e+11     3.29793e+11 18653471415     6.5171\n",
       "12  3.31472e+11     3.31472e+11 18653471415     6.5503\n",
       "13  3.21772e+11     3.21772e+11 18653471415     6.3586\n",
       "14  3.09275e+11     3.09275e+11 18653471415     6.1117\n",
       "15  3.17482e+11     3.17482e+11 18653471415     6.2739\n",
       "16  3.17669e+11     3.17669e+11 18653471415     6.2775\n",
       "17  3.10767e+11     3.10767e+11 18653471415     6.1412\n",
       "18  3.11140e+11     3.11140e+11 18653471415     6.1485\n",
       "19  3.09275e+11     3.09275e+11 18653471415     6.1117\n",
       "20  3.15244e+11     3.15244e+11 18653471415     6.2296\n",
       "21  3.07782e+11     3.07782e+11 18653471415     6.0822\n",
       "22  3.12632e+11     3.12632e+11 18653471415     6.1780\n",
       "23  3.09834e+11     3.09834e+11 18653471415     6.1227\n",
       "24  3.22705e+11     3.22705e+11 18653471415     6.3771\n",
       "25  3.42851e+11     3.42851e+11 18653471415     6.7752\n",
       "26  3.44157e+11     3.44157e+11 18653471415     6.8010\n",
       "27  3.16549e+11     3.16549e+11 18653471415     6.2554\n",
       "28  3.14498e+11     3.14498e+11 18653471415     6.2149\n",
       "29  3.17482e+11     3.17482e+11 18653471415     6.2739\n",
       "30  3.36322e+11     3.36322e+11 18653471415     6.6462\n",
       "... ...             ...         ...             ...   \n",
       "280 3.45028e+11     3.45028e+11 21618279922     6.4978\n",
       "281 3.46757e+11     3.46757e+11 21618279922     6.5304\n",
       "282 3.46109e+11     3.46109e+11 21618279922     6.5182\n",
       "283 3.43082e+11     3.43082e+11 21618279922     6.4612\n",
       "284 3.41785e+11     3.41785e+11 21618279922     6.4368\n",
       "285 3.46109e+11     3.46109e+11 21618279922     6.5182\n",
       "286 3.49351e+11     3.49351e+11 21618279922     6.5792\n",
       "287 3.48054e+11     3.48054e+11 21618279922     6.5548\n",
       "288 3.48054e+11     3.48054e+11 21618279922     6.5548\n",
       "289 3.45244e+11     3.45244e+11 21618279922     6.5019\n",
       "290 3.43514e+11     3.43514e+11 21618279922     6.4693\n",
       "291 3.43514e+11     3.43514e+11 21618279922     6.4693\n",
       "292 3.40488e+11     3.40488e+11 21618279922     6.4123\n",
       "293 3.35300e+11     3.35300e+11 21618279922     6.3146\n",
       "294 3.36380e+11     3.36380e+11 21618279922     6.3350\n",
       "295 3.30760e+11     3.30760e+11 21618279922     6.2291\n",
       "296 3.26652e+11     3.26652e+11 21618279922     6.1518\n",
       "297 3.22329e+11     3.22329e+11 21618279922     6.0703\n",
       "298 3.25355e+11     3.25355e+11 21618279922     6.1273\n",
       "299 3.24274e+11     3.24274e+11 21618279922     6.1070\n",
       "300 3.25355e+11     3.25355e+11 21618279922     6.1273\n",
       "301 3.25355e+11     3.25355e+11 21618279922     6.1273\n",
       "302 3.28814e+11     3.28814e+11 21618279922     6.1925\n",
       "303 3.28814e+11     3.28814e+11 21618279922     6.1925\n",
       "304 3.27733e+11     3.27733e+11 21618279922     6.1721\n",
       "305 3.26004e+11     3.26004e+11 21618279922     6.1395\n",
       "306 3.23842e+11     3.23842e+11 21618279922     6.0988\n",
       "307 3.22545e+11     3.22545e+11 21618279922     6.0744\n",
       "308 3.21248e+11     3.21248e+11 21618279922     6.0500\n",
       "309 3.19086e+11     3.19086e+11 21618279922     6.0093"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "df[!is.na(as.numeric(df$`换手率(%)`)),]\n",
    "# 或者根据前几题的经验，非数字就是'--'\n",
    "df <- df %>%\n",
    "  filter(`换手率(%)` != '--')\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 66.绘制换手率的密度曲线"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 78,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {},
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAA0gAAANICAIAAAByhViMAAAABmJLR0QA/wD/AP+gvaeTAAAg\nAElEQVR4nOzdaWBU5fn38WuWTPaNsIWEfY0gKCKiKNa6oQ8uxb0t2KpFq23VagVxaxW3+q/V\nWq1W646tVkVRRMWqaF1ZKyCyL0kgYQkZyDaTmTnPi1tGZAmT5My5zznz/byaSU5mroxH+HHd\nm8cwDAEAAIDzeXUXAAAAAHMQ7AAAAFyCYAcAAOASBDsAAACXINgBAAC4BMEOAADAJQh2AAAA\nLkGwAwAAcAm/7gKSqLGxsampSXcVLuHz+bKzs3fu3Km7kFSUk5Pj8/nC4XBjY6PuWlKOz+fL\nyckJBoO6C0lF2dnZfr+fO18Lr9ebm5vLna9FInd+YWHhgb7l5mBnGEY0GtVdhUt4PB6fz8fn\nqYXH4/F6vSLC52899eHzyWvBna+X1+uNxWIcT2U9ded7PJ623fkMxQIAALgEwQ4AAMAlCHYA\nAAAuQbADAABwCYIdAACASxDsAAAAXIJgBwAA4BIEOwAAAJcg2AEAALiExmBn/HHCeXt9aeFr\nf/3VpT/+8SVX/WXGwgP9WCLXAAAApCANwc4wwlsq17z59K3/DYb2/Pq2RQ/d8cI3Z1xyww2X\nnrnyn3c8tGjbvj+byDUAAACpScNZscGVj0y9b+m+X//sic8Pv/7Pp47sLCK3pn1x7ROf//rh\ncW24BgAAIDVpCHYFA6954gkRkTPPPHPPr3+wrfFngwvV48LBZzVue1Zk79DW8jVNTU0vvvhi\n/OngwYPLysqS8BukInUUd2Zmpu5CUpH68H0+H5+/9bjzNVIfvt/v5/O3XvzONwxDdy0p56B/\n5rf8H0VDsDuQilC0d8a39fgzekdDFa29prGx8aGHHoo/nTRp0ogRI5JWbyrKzs7WXULqSktL\nS0tL011FiuLO18jv9/v9NvqrKqVkZWXpLiF1tXDnR6PRln4wOfW0xT75cz91t3yNx+PJy8uL\nP01PT+efGibyeDx8nlp4PB71gM9fC+58Xbjz9eLO1+Wgd75jOnbd030bQ9HBWX4RiYbKfYHu\nrb2moKDg/fffjz9taGjYvn17kqtOFX6/v6CggM9Ti4KCAr/f39TUVFdXp7uWlMOdr1F+fn5a\nWhp3vhY+n6+wsLCmpoZsZz1154dCoV27dh3omo4dOx7oWzbax+7EjpkzV9Wqx7WrZmZ2OrFt\n1wAAAKQmGwW7UZOOXXDvfV8uW7d2yed/vHfBcZcfo77+2GOPHfQaAAAA2GgotmjYL2855y9/\nv/+mWukw6rzbrhjaQX191qxZl19+ecvXAAAAwM1TIxsaGhoaGnRX4RJqptG2bewIrQFz7DTi\nzteIOXYaqTl227dvd3FIsC33zLEDAABAexDsAAAAXIJgBwAA4BIEOwAAAJcg2AEAALgEwQ4A\nAMAlCHYAAAAuQbADAABwCYIdAACASxDsAAAAXIJgBwAA4BIEOwAAAJcg2LnKkiVLJk6c2KtX\nr9GjR//xj38Mh8O6KwIAANYh2LnHnDlzxo4dO3v27Pr6+pUrV953331jx47dtm2b7roAAIBF\nCHYuMW/evJ///OfhcLhDhw7XXXfdaaedJiJLliyZMGFCU1OT7uoAAIAVCHZuEA6Hr7766lAo\nVFRU9Nprr02ZMuXZZ5+95ZZbRGT+/Pk333yz7gIBAIAVCHZu8MADD6xatUpEHnzwwbKyMvXF\n3/zmNz/5yU9E5Lnnnps3b57O+gAAgCUIdo5XW1v7t7/9TUTOPPPMU089dc9v3XHHHV27do3F\nYpMnTzYMQ1OBAADAIgQ7x3vyySfr6up8Pt9NN92017dyc3P/8Ic/iMiSJUtmz56tozoAAGAd\ngp2zNTU1Pf744yIybty4Pn367HvB2WefPWjQIBF54IEHrC4OAABYi2DnbLNnz1YbmvzqV7/a\n7wVer/fqq68WkUWLFn388ceWFgcAAKxFsHO2F198UUQGDx582GGHHeias88+u7S0VESee+45\n6yoDAACWI9g52NatW+fOnSsiF1xwQQuX+f3+iy66SERmzZpVU1NjUXEAAMByBDsHe/XVVyOR\niN/vP+ecc1q+8qKLLvJ6veFw+JVXXrGmNgAAYD2CnYO9++67InLMMcd07ty55Su7d+8+ZswY\nEXn55ZetqAwAAOhAsHOq+vr6zz//XEROPvnkRK7/0Y9+JCKLFi0qLy9PbmUAAEATgp1Tffjh\nh+FwWEROOumkRK4fO3as3+83DOOtt95KcmkAAEAPgp1T/ec//xGRHj169OvXL5HrO3ToMHr0\naBF54403klsZAADQhGDnVB9++KGInHLKKYn/yLhx40Rk3rx5aus7AADgMgQ7RyovL1dT5Y49\n9tjEf2rs2LEejycWi6luHwAAcBmCnSN9+umnIuLxeI466qjEf6pr166HHHKI7B7GBQAALkOw\nc6TPPvtMRAYOHNixY8dW/aBaQvvBBx9EIpGkVAYAAPQh2DmS2ujk6KOPbu0PqiW0tbW1CxYs\nML8sAACgFcHOeaqrq9esWSNtCnZHHHFEfn6+7F57AQAA3IRg5zzz589XD1o1wU7x+/1q05OP\nP/7Y5LIAAIBuBDvnWbRokYh069atW7dubfjx4447TkQWLFhQV1dncmUAAEArgp3zLFy4UESG\nDx/eth9XwS4SiXzxxRdmlgUAAHQj2DlMLBZbvHixiBx22GFte4WBAwd27dpVGI0FAMB1CHYO\ns3r16l27donI4Ycf3uYXUdsaf/LJJ6aVBQAAbIBg5zBqmxKv19ueYDdq1CgRWbp0KdPsAABw\nE4Kdw3z11Vci0q9fv9zc3Da/iAp2kUgkvsAWAAC4AMHOYZYsWSIiQ4cObc+LDBgwoKioSERY\nPwEAgJsQ7JzEMIyvv/5aRAYPHtye1/F4PCNHjhSCHQAA7kKwc5KNGzeqlRPtDHaye3Pj+fPn\nNzc3m1AZAACwAYKdk6hxWBEZMmRIO19KdewaGxuXLl3a3rIAAIA9EOycRIWwrl27durUqZ0v\nNWzYsEAgILuX2QIAABcg2DmJCnbtb9eJSCAQUK9DsAMAwDUIdk5iysqJuCOOOEJE2PEEAADX\nINg5Rn19fUVFhYiUlZWZ8oIq2K1fv37btm2mvCAAANCLYOcYK1asMAxDRAYOHGjKC44YMUI9\nWLhwoSkvCAAA9CLYOcbKlStFxOfz9evXz5QX7Nmzp9qmeNGiRaa8IAAA0Itg5xjffPONiPTs\n2TMjI8Os1xw2bJiI/O9//zPrBQEAgEYEO8dQwc6scVhFBbvFixeb+JoAAEAXgp1jqKHYZAS7\nrVu3VlVVmfiyAABAC4KdM8SXxCYj2AmjsQAAuALBzhlWrlxp7pJYpbS0VK2fINgBAOACBDtn\nWL16tYh4PB6zlsTGqabdV199Ze7LAgAA6xHsnGHNmjUi0q1bt8zMTHNfeejQoSKyZMkSc18W\nAABYj2DnDCrY9e3b1/RXVifGbtq0qaamxvQXBwAAViLYOYMKdqaPw8ruYCciS5cuNf3FAQCA\nlQh2DmAYxrp160SkT58+pr947969s7OzhWAHAIDzEewcoKqqqq6uTpIzFOv1eg855BARWbZs\nmekvDgAArESwcwA1DivJCXYicuihhwrrJwAAcD6CnQOsXbtWRAKBQPfu3ZPx+oMHDxaR1atX\nh8PhZLw+AACwBsHOAVTHrkePHn6/Pxmvr4Jdc3OzOo4WAAA4FMHOAZK3ckIpKyvzer0i8vXX\nXyfpLQAAgAUIdg6wfv16EenZs2eSXj8rK6tHjx4isnz58iS9BQAAsADBzgE2btwoIr169Ure\nW6iFsQQ7AAAcjWBnd1u3bq2vr5dkduxkd7BjKBYAAEcj2NmdGocVS4JddXX19u3bk/cuAAAg\nqQh2dqeCncfjSWqwKysrUw8YjQUAwLkIdnanJth17tw5MzMzee/Su3fvjIwMEWHHEwAAnItg\nZ3eqY5fUlRMi4vP5+vfvLwQ7AACcjGBnd9YEOxEZNGiQEOwAAHAygp3dbdiwQUTUPnNJpYLd\nihUrkv1GAAAgSQh2thYOh6urqyXJS2IVFexqa2urqqqS/V4AACAZCHa2VlFREYvFxJKO3cCB\nA9UDmnYAADgUwc7WysvL1YPS0tJkv1f37t2zsrKEYAcAgGMR7GxNBTu/319cXJzs9/J6vSyM\nBQDA0Qh2tlZRUSEixcXFfr/fgrdT2xQT7AAAcCiCna2pjp0FE+wU1bFbuXKlNW8HAADMRbCz\nNXXsRPfu3a15uwEDBohIMBjcsmWLNe8IAABMRLCzNdWxsyzYqY6d0LQDAMCZrJi5pYvf7y8o\nKNBdRds1NzerLeUGDhxozS8ybNiw9PT0UChUUVGx1zt6PB4RcfTn6Vw+n09EAoEAn7/1uPM1\n4s7XSN35+fn5ugtJRQe989U+aAfi5mAXi8XC4bDuKtpuw4YN0WhURIqLi5uamqx50z59+ixf\nvnzp0qV7vaPX683KyrKsDOwpMzPT5/NFo9FQKKS7lpTDna8Rd75G3Pkaxe/8A33+hmEEAoED\n/bjLg52jb8pVq1apB126dLHsF+nfv//y5cuXL1++1zv6/X7+J9clIyNDRFr4nxzJw52vUXp6\nest/vSF5fD5fVlZWKBQyDEN3LSknkTs/Nzf3QN9ijp19qb1OvF6vBZvYxbEwFgAA5yLY2Vdl\nZaWIdOrUqYWOq+nUwtiqqqqdO3da9qYAAMAUBDv72rRpk4iUlJRY+aYq2InI6tWrrXxfAADQ\nfgQ7+1J7nVgc7Pr16+f1eoVgBwCAAxHs7EtLxy4jI0NN6VuzZo2V7wsAANqPYGdfWoKdiPTr\n10/o2AEA4EAEO5sKBoO7du0SkdLSUovfmmAHAIBDEexsSrXrRKRbt24Wv7UKdmvXrm15b2sA\nAGA3BDubUpvYiY6h2L59+4pIU1OT2m8FAAA4BcHOplSoCgQCnTp1svitVcdOGI0FAMBpCHY2\npYZiu3btqjYfsVJJSYk6w4qFsQAAOAvBzqZ0LYkVEa/X26dPHyHYAQDgNAQ7m9IY7ESEYAcA\ngBMR7GxKBTu1V7D14gtjtbw7AABoG4KdTVVVVYm+YKc6duXl5eFwWEsBAACgDQh2dhQMBuvr\n60V3sIvFYhs2bNBSAAAAaAOCnR3FdyfWFezUVnbCNDsAAByFYGdHahxWdBw7oXTs2DEvL0+Y\nZgcAgKMQ7Oxo8+bNIuLz+azfnThOjcYS7AAAcBCCnR2podjOnTv7/X5dNbDjCQAAjkOwsyO9\nS2IVOnYAADgOwc6OVMdO1wQ7pVevXiKyefPmxsZGjWUAAIDEEezsKH5QrMYaVMfOMIz169dr\nLAMAACSOYGdHavGEHYZiRWTdunUaywAAAIkj2NlOOBzesWOH6A52RUVF7HgCAICzEOxsp7q6\n2jAM0T0UKyK9e/cWEYZiAQBwCoKd7cR3J7ZJsGMoFgAApyDY2Q7BDgAAtA3Bznaqq6tFJDMz\nMzc3V28lKthVVlaGQiG9lQAAgEQQ7GxHBTvt7TrZvTA2FosxzQ4AAEcg2NmOGoq1Q7BTHTth\n/QQAAA5BsLMdO5wnpnTu3Dk7O1tENmzYoLsWAABwcAQ721HBrkuXLroLERHp0aOHsH4CAACH\nINjZjppjZ5Ngx1Z2AAA4CMHOXkKhUG1trdhjjp2I9OrVSwh2AAA4BMHOXqqqqmxy7ISigt3G\njRuj0ajuWgAAwEEQ7OxFjcOKzYJdOBzevHmz7loAAMBBEOzsZcuWLepB586d9VaixHc8Wbt2\nrd5KAADAQRHs7EUtic3KytJ+7IRSWlqalpYmLIwFAMAJCHb2snXrVhHp1KmT7kK+5ff7S0pK\nhPUTAAA4AcHOXuxznlicmmbHHsUAANgfwc5e1Bw7m0ywU9jxBAAApyDY2YsKdjbZnVhRh0+w\neAIAAPsj2NmLCnb2mWMnuzt2wWBwx44dumsBAAAtIdjZiGEY27ZtE5sNxfbs2VM9oGkHAIDN\nEexspKamprm5WWwW7FTHTgh2AADYHsHORuy2O7GSl5dXWFgoBDsAAGyPYGcj8fPEbBXsZPdo\nLHsUAwBgcwQ7G1EdO4/H07FjR921fI8ajaVjBwCAzRHsbEQdO1FYWBgIBHTX8j0q2K1Zs0Z3\nIQAAoCUEOxux4SZ2itrKbuPGjZFIRHctAADggAh2NmK3g2LjVLCLRCKbN2/WXQsAADgggp2N\nqMUTdls5IXtsZceJsQAA2BnBzkZs27ErKSnx+XwisnHjRt21AACAAyLY2YgKdnZbEisiaWlp\n3bp1Ezp2AADYG8HOLqLRqDqM1YZDsbJ7NJaOHQAAdkaws4uamppoNCq2HIqV3cGOjh0AAHZG\nsLMLNQ4r9g52dOwAALAzgp1dxA+KtXOw27JlS2Njo+5aAADA/hHs7EJ17DweT1FRke5a9kMd\nPmEYRnl5ue5aAADA/hHs7GLbtm0ikp+fb7fzxJT4VnaMxgIAYFsEO7tQHTt7LokVkc6dO2dk\nZAjBDgAAGyPY2YVtdydWPB6PatoxFAsAgG0R7OxCLZ6w4e7EcWqaHR07AABsi2BnFzbv2IlI\n7969hY4dAAA2RrCzC5vPsRP2KAYAwPYIdrZgGEZNTY3YeyhWdexqamrq6up01wIAAPaDYGcL\nwWAwHA6LvYOdmmMnjMYCAGBXBDtbsPl5YgrBDgAAmyPY2YLanVjsHey6dOmSlZUlLIwFAMCu\nCHa2sH37dvXAnueJxXXv3l0IdgAA2BXBzhbUJnYZGRk5OTm6a2mJCnYMxQIAYE8EO1tQQ7F2\nHodVevToIQQ7AADsimBnC2oo1s5LYpXS0lIh2AEAYFcEO1tQq2LtH+zUUCxb2QEAYE8EO1tQ\nQ7FOCXZC0w4AAFsi2NmCGop1yhw7IdgBAGBLBDtbUB07m+91IiIdO3bMzMwUdjwBAMCWCHb6\nRSKR2tpaccJQrMfjUaOxFRUVumsBAAB7I9jpt3379lgsJk4YihX2KAYAwMYIdvrFzxOzf8dO\n2KMYAAAbI9jpFw929p9jJ3TsAACwMYKdfvGDYh3RsVMLY2tqaurr63XXAgAAvsevu4DvnHnm\nmft+cebMmXs+/dOE8+YGQ/GnXUbd+fjUQ5NeWZKpjl1eXl4gENBdy8GpwydEpKKiYuDAgXqL\nAQAAe7JRsJs6deqeT9e88ei7sVO/d4XRPK8uPPLK604qSFdfyOjQ07Lykscpe50o8T2KCXYA\nANiNjYLdqFGj4o8bqt7/y5r8aU+fv+cF4brFDVFj/JjRh2TZqOz2c8pBsUrnzp3T09NDoRDT\n7AAAsBs7JiQj1vjglEePv/FvfTJ8e349VPuZx5vx8QNT7ly8Lq2g24hTL7xi/Gi/57sLwuHw\nRx99FH9aWlpaUlJiWdlttmPHDhHp1KlTenq67loOyOv1ioiqsLS0dM2aNZs3b7ZzwW7i8XhE\nxOfz8YFbb887HxZTHz53vhbqw3fEBCH3UR++1+s90J1vGEYLP27HYLdx1p1Lc06fPmzvocna\npRUiRqTs9Jsv6NVYveLfjz1we6Dk9jN6xS+or6+fMmVK/OmkSZMmTZpkTc3toYJdcXFxbm6u\n7loOQlXYu3dvFezsX7CbpKWlpaWl6a4iRXGra8SdrxF3vkYt3PnRaLSFH7RdsIuGK+54ZtmF\nf52677e6nXDb88el5eYERET69hnQo/7i6x+VM+6xukSzbd26VRyyO7HSq1cvEVm/fr3mOgAA\nwPfZLthVvPXgztyTz+iate+3fBnZe/7bIbv45EjTS3teUFhYOH/+/PjThoaG+BZxdlZdXS0i\nWVlZdq7W7/cXFBSoClUGXbdunZ0LdpOCggK/39/U1FRXV6e7lpSz550Pi+Xn56elpXHna+Hz\n+QoLC7dv397yqB+SQd35oVBo165dB7qmhXn5NtvHzoj+/cV1gy4Zv99vvjr12pseWhh/2lj9\nQSB3pFWVJUskEgkGg+KcVbGye8eTLVu2hEKhg14MAAAsY69g11Tz1pL68LnDvxdxHnvsMfXg\nqB92XfreHQ88++q8pd/M/2T2tBtfOPHan2mo0lQ1NTXq30NOWRUru/coNgyjsrJSdy0AAOA7\n9gp2m+a8H8geOjT7e7MFZ82apR6UnDT5T9eMr1703n233frESx8Mu3TaFcMdE4YOJH7sRIcO\nHfRWkrj4HsXseAIAgK3Ya45dnwv//PKFe39xz8Mn+p0w4e4TJlhaU5LF5+44aPFEcXFxWlpa\nc3MzHTsAAGzFXh27FBTv2Dlojp3P5+vatauIlJeX664FAAB8h2CnmerYZWdnZ2Rk6K6lFdRo\nbEVFhe5CAADAdwh2mqmOnYPadYo6MZaOHQAAtkKw08xZB8XGqY4dwQ4AAFsh2GmmhmId2rHb\nvHlzJBLRXQsAAPgWwU6zmpoacdReJ4oKdpFIpKqqSnctAADgWwQ7zRw6xy6+lR07ngAAYB8E\nO83UUKzjOnalpaUej0eYZgcAgJ0Q7HQyDKO2tlYc2LFLT09XCz7Y8QQAAPsg2OkUDAbV4gPH\ndexk94mxnCoGAIB9EOx0ih874bjtTkSkpKRE6NgBAGAnBDud4sHOiR07tTCWxRMAANgHwU4n\nRwc79igGAMBuCHY6qU3sfD5fQUGB7lpaTQW7xsZG9VsAAADtCHY6qb1OCgsLvV7n/YdQQ7FC\n0w4AANtwXp5wkx07dogD9zpR4nsUE+wAALAJgp1Oao6dEyfYiUh+fn5ubq6wfgIAANsg2Onk\n0PPE4lg/AQCArRDsdFLLDpwe7OjYAQBgEwQ7nRw9FCu710/QsQMAwCYIdjqpjp1zgx1DsQAA\n2ArBTptwOLxr1y5xfrCrqalpaGjQXQsAACDY6bNjxw7DMMT5c+yEE2MBALAHgp028QMbXBDs\nWD8BAIAdEOy0iR8U69xg16VLl0AgIHTsAACwB4KdNurYCREpLCzUW0mbeb3erl27CsEOAAB7\nINhpozp2gUAgJydHdy1tx1Z2AADYB8FOG9Wxc+6SWIWt7AAAsA+CnTZO38ROKSkpEYZiAQCw\nB4KdNu4IdmoodvPmzdFoVHctAACkOoKdNk4/T0xRwa65ubm6ulp3LQAApDqCnTbumGPHVnYA\nANgHwU4bNRTr3L1OlNLSUo/HI6yfAADABgh22qhg59zdiZXMzEzVdGT9BAAA2hHs9Ghubt61\na5c4v2MnbGUHAIBtEOz02LFjh2EY4vyOnewOdnTsAADQjmCnR/ygWKcvnpDdwY45dgAAaEew\n0yN+UKwLgh17FAMAYBMEOz3UyglxRbBTp4rt2rVr586dumsBACClEez0UB27tLS0nJwc3bW0\nV3wrO5p2AADoRbDTQ82xKywsVJvAORrBDgAAmyDY6eGOYyeUoqKijIwMIdgBAKAbwU4Pdxw7\noXg8HrV+gq3sAADQi2CnR21trbgl2Mnu9RPseAIAgF4EOz3UHDt3DMUKO54AAGAPBDs93DTH\nTnYHO4ZiAQDQi2Cnh5vm2Mnuodjq6urm5mbdtQAAkLoIdhrEYrFgMCiu69hFo9GqqirdtQAA\nkLoIdhoEg8FoNCou6tjFt7Jj/QQAABoR7DRw00GxSklJidfrFdZPAACgFcFOg/hBsa7p2AUC\ngU6dOgnrJwAA0Ipgp4H7OnayezSWjh0AABoR7DRQHTuPx1NQUKC7FtOwlR0AANoR7DRQHbu8\nvDy/36+7FtOoHU8IdgAAaESw08Blm9gpqmPHqlgAADQi2GngsoNiFTXHrrGxMb40BAAAWIxg\np4HLDopV4lvZsTAWAABdCHYauLhjJ4zGAgCgD8FOA1d27AoLC3NycoSOHQAA+hDsNFCrYl3W\nsRN2PAEAQDeCnQYEOwAAkAwEO6uFQqHGxkZx3VCssJUdAAC6EeysFt8NxE3HTiicKgYAgF4E\nO6u58qBYRQ3Fbt26NRQK6a4FAIBURLCzmouDnerYGYbBwlgAALQg2FktHuzcOhQrjMYCAKAJ\nwc5qandiv9+vdn1zk+LiYr/fLwQ7AAA0IdhZTe1OXFhY6PF4dNdiMr/f36VLFyHYAQCgCcHO\namoo1n0T7BQWxgIAoBHBzmoq2Llvgp1CsAMAQCOCndXc3bFjj2IAADQi2FlNbVDsvvPEFLWV\nXWVlZSwW010LAAAph2BnNbUq1q3BTnXswuHw1q1bddcCAEDKIdhZLRU6dsJoLAAAOhDsrBYM\nBsW9wU517IRgBwCADgQ7S+3atSscDot7F09kZ2erzEqwAwDAegQ7S6kJduLe7U6EHU8AANCH\nYGep+EGxbh2KFYIdAAD6EOwspVZOiKuDnVo/UV5errsQAABSDsHOUvGOnVvn2Al7FAMAoA/B\nzlIq2KWnp2dkZOiuJVlUsAsGg7t27dJdCwAAqYVgZym1eMLF7TphKzsAAPQh2FlKdexcvCRW\n2MoOAAB9/LoLSCKfz5ebm6u7iu+pq6sTkU6dOtmtsIPyeDwikkjZOTk5mZmZjY2NW7duddyv\naU9er1dE0tLS+Dytl/idD9P5fD7hztdE3fk5OTm6C0lF6s73+/0HuvMNw2jhx90c7AzDiEaj\nuqv4nu3bt4tIQUFBJBLRXUvrqGyRYNklJSWrV69ev369435Ne0pLSxORWCzG52m9Vt35MJff\n7xcRwzD4/K3Hna/RQe/81A12sVissbFRdxXfs23bNhHJz8+3W2EH5ff7VR8ukYtLS0tVsHPc\nr2lP6enpXq83Go3yeVqvVXc+zBUIBHw+XyQS4fO3ns/ny8zMbGpqajlDIBnUnd/yn/ktNFOZ\nY2cpNcfOxZvYKexRDACAFgQ7S6XC4gnZHezYoxgAAIsR7KxjGMbOnTslZYLdli1bwuGw7loA\nAEghBDvr1NXVNTc3SwoMxaodT2KxWGVlpe5aAABIIQQ768QPinX3BsXCVnYAAGhCsLNO/KBY\n13fsiouL1Wptgh0AAFYi2FkndYKd3+/v2rWrsH4CAABrEeyskzrBTlgYCwCADgQ766hgl5mZ\nmZ6erruWpFPT7Ah2AABYiWBnnWAwKCmw14lCsAMAwHoEO+uoVbGuXxKrqEAanGUAACAASURB\nVKHYzZs32+24XgAAXIxgZ53a2lpJjQl2sjvYNTc3V1dX664FAIBUQbCzToqcJ6bEt7JjNBYA\nAMsQ7KyjOnapE+w8Ho8Q7AAAsBDBzjopNRSbnp7eqVMnIdgBAGAhgp111OKJFOnYye7RWA6f\nAADAMgQ7ixiGobY7SZFVscIexQAAWI5gZ5Fdu3Y1NzdLKnXsevToIQQ7AAAsRLCziJpgJykz\nx0726NgZhqG7FgAAUgLBziIpdVCsoubYhUKhrVu36q4FAICUQLCzSDzYpc5QbHwru40bN+qt\nBACAFEGws0gKDsWqOXbCwlgAAKxCsLOI6tgFAoHMzEzdtVgkKytLLQGmYwcAgDUIdhZRHbvU\n2etEYSs7AACsRLCzSEqdJxangh0dOwAArEGws4gaik21YMdWdgAAWIlgZxEV7IqKinQXYql4\nx46t7AAAsADBziKp2bFTwa6pqWn79u26awEAwP0IdhZRB8WmWrCL73iyYcMGvZUAAJAKCHYW\nqampkdQLdvE9ilkYCwCABQh2FlGrYlNnd2IlJyeHrewAALAMwc4K9fX14XBYUi/YCVvZAQBg\nIYKdFVLwoNg4FeyYYwcAgAUIdlZIwYNi49jKDgAAyxDsrBAPdinbsWMrOwAALECws0IqBzvV\nsWtqatq2bZvuWgAAcDmCnRXUHDu/35+Tk6O7FqvFdzxhYSwAAMlGsLNC/NgJj8ejuxar9ezZ\nUz0g2AEAkGwEOyuoYydScOWEiGRlZbGVHQAA1iDYWSE1D4qNU007FsYCAJBsBDsrqGCXmh07\n2b1+go4dAADJRrCzQmqeJxangh17FAMAkGwEOyuk+FCsCnYVFRWxWEx3LQAAuBnBzgqqY5fi\nwS4cDldXV+uuBQAANyPYWYGOnXrANDsAAJKKYJd04XC4oaFBUniOXffu3dUGfkyzAwAgqQh2\nSac2sZMU7tilp6d36dJF6NgBAJBkBLukU+OwksLBTlgYCwCAJQh2SRcPdik7FCu79yimYwcA\nQFIR7JKOjp2wRzEAAJYg2CWd2uvE6/Xm5+frrkUb1bHbtGlTOBzWXQsAAK5FsEs61bHLy8vz\n+Xy6a9FGBbtYLFZZWam7FgAAXItgl3QpvjuxEt/Kbv369VoLAQDAzQh2SZfiB8Uq3bp1CwQC\nwjQ7AACSiWCXdCl+7ITi9XpLSkqEYAcAQDIR7JKOoVilV69ewlAsAADJRLBLOnXyBMFOrZ9g\nj2IAAJKHYJd0NTU1kvJz7ISt7AAASD6CXdIxFKuoodgdO3aoDwQAAJiOYJdcsVhs586dQsdu\n91CsMBoLAEDSEOySq7a2NhaLCR273R07IdgBAJA0BLvkig870rHLy8tTHwILYwEASBKCXXKp\nTeyEjp2I7G7a0bEDACBJCHbJpfY6ETp2IsKOJwAAJBnBLrno2O2JPYoBAEgqgl1yqWCXlZWl\nTkpNcapjV1lZ2dzcrLsWAABciGCXXBw7sSfVsYtEIpWVlbprAQDAhQh2yaU6dkywU+Jb2a1b\nt05vJQAAuBLBLrnUdicEO6WkpEQNSTPNDgCAZEg02JUM/eGU+55atrk+qdW4j+rYMRSreL1e\ndWIswQ4AgGRIONg1LL73hksOLS0cfvJFf372reqmaFLLcg2GYvfCwlgAAJIn0WD35eqaNfPe\nvfO3E42Vb/324v9XUlB82k+veeGdBWEjqeU5HkOxe1HBjjl2AAAkQyvm2PUZcfKN9z2xaMOO\nbz6ddesVp238z+M/GTuioPiQn113938WVySvREdTHbv8/HzdhdhF7969RWT9+vWGwb8JAAAw\nWRsWT3gHHn36rQ888+WCz2+6cGRj9fJn7p960uHdux16wi1/e60hxt/W36O2O6FjF6c6do2N\njVu3btVdCwAAbuNv7Q9sWfnlazNmzJgxY86XK6OGkdNt8Fnjx58yomjOiy/ce9X4f733t1Wv\nXJ6MQp2orq5O7cRLsItTwU5E1q9f37lzZ621AADgNokGuzXz35sxY8aMGTM+Xb5ZRIr6jvj5\n9XeeM378KaMGqqbfxIuvvueTh0qPvWJJw6WHZrU6L7pS/DwxhmLjevXq5fV6Y7HY2rVrR44c\nqbscAABcJdEE1u/Ik0WkZMhxv7lt8vjx448f2n3fa7oe+SO//7dmVudwahxW2O5kD4FAoLi4\nuLKykvUTAACYLtFgN/mex8aPHz+yf8cWrvEFSjkDdE81NTXqAUOxe+rdu3dlZSU7ngAAYLpE\nF0/cO+XyZzz7SYEbZ50cyBlqaknuofY6EYLd96mFsXTsAAAwXfuOFDMiKxfVRJv4G3r/1By7\nQCCQnZ2tuxYbUesn1q5dq7sQAADc5iDB7pH+HTwej8fjEZFH+hd69uJNO/mWhWnZh1pSqvNw\nnth+9enTR0SCwWB8qBoAAJiifR07EV9a/tm3PmJKKe7DJnb7pYKd0LQDAMBsBwl2V66qMQxD\nHRJw5aodxj4i4dp/XXeYJaU6Dx27/erdu7fqATPNDgAAcyW6KtaCA6D+NOG8ucFQ/GmXUXc+\nPnU/g7wLX/vrk298WmMUjjrj0t/8aHiyq2oPDordr8zMzC5dulRVVRHsAAAwV0vBTrVVNoei\nXQNe9fhATIh9RvO8uvDIK687qSBdfSGjQ899r9q26KE7XlhxxdU3dJHqJx6846Fej//68JZ2\nYNFLBTs6dvvq3bt3VVUVO54AAGAuuxwREa5b3BA1xo8ZfUiLp1Z89sTnh1//51NHdhaRW9O+\nuPaJz3/98Diramw1NRTLsRP76t2792effcYcOwAAzNVSitqzD5fsodhQ7Wceb8bHD0y5c/G6\ntIJuI0698Irxo/37dAk/2Nb4s8HfjmwWDj6rcduzIt8Fu+bm5kWLFsWfduzYsaioKKllt0wt\nnigqKkpLS9NYhil8Pp+ImPWLDBgwQETWrVvngk/GAqpf7vV6+bisZ+6dj1bhztcofudbMBEL\ne1F3vsfjadudn/Acu2jdw7+56KHZtSvWfiwi3zx/85mTH6mSTmf+4q5nf39Oe9fWitQurRAx\nImWn33xBr8bqFf9+7IHbAyW3n9Frr8sqQtHeGd/W7M/oHQ1V7Pndurq6K6+8Mv500qRJkyZN\nandpbac6dt26dXNN086sX2TIkCEiUlNTE41GO3ToYMprul4gEAgEArqrSFGu+V/YibjzNcrL\ny9NdQupq4c6PRqMt/GCiwW7J/af8+pHPAjnDRSS868vRl9xd0xwT2TH9D+eGDlv377N7tbLg\nvXU74bbnj0vLzQmIiPTtM6BH/cXXPypn3LPXZfv8w6Gl302vUCjU0NAgIgSXfamOnYisWrXq\nqKOO0lsMAACukWiwu/nexVmdz/li8dMisnHmlJrm2F1vLrpiSOMZw05459d/lrMfbGcdvozs\n3D2eZhefHGl6ad/Luqf7Noaig7P8IhINlfsC3ff8bn5+/uuvvx5/GggEVM9Mi6qqKjuUYRaf\nz5eXl2fWL9KxY0ev1xuLxRYvXhwPeTiQ3Nxcv98f/6cCrGTunY9W4c7XyOv15ufn19bWMhRr\nPXXnh8Ph+vr6/V5gGEYLPaNEg937taGBN900pDhHRL7887LsLhNv/H+HicifJvYb/eg/Rdob\n7F6deu2C4gl3/vrb7Usaqz8I5I7c97ITO2bOXFU7eFhHEaldNTOz04l7ftfr9ZaUlMSfNjQ0\naPzjYNu2bepBXl5ey11TR1BD/mb9ImlpacXFxZWVlatXr3bBh2MNwzD4rKxn7p2PVlGRgjtf\no2g0SrCzXjvv/ERnx2V4PZG6iIiIRO9bUdt1zM/U132ZPiPW2IY33stRP+y69L07Hnj21XlL\nv5n/yexpN75w4rXfvsVjjz0Wv2zUpGMX3Hvfl8vWrV3y+R/vXXDc5ce0/62TRO11IuxjdwDq\n/Ik1a9boLgQAAPdINNhd1Dlr1VNTF2/a9dVLVyyuC/9g8hARiUV23P/c2vT849tfR8lJk/90\nzfjqRe/dd9utT7z0wbBLp10x/NsN6mbNmhW/rGjYL285p+SZ+2+65YHnu5932xVD7Tt9LT52\nwz52+6WCHTueAABgokSHYq+9/4S/XjDz8JI8EUnLPvSuoUUNW54d0OeyyvrmI6bcakop/U6Y\ncPcJE/b9+syZM/d8Ouyc3zx8zm9MecekUh07NUFHdy12RMcOAADTJdqx63P+jGevP6d3x8yO\n3Yfc9cpbndO80VBFc1Gfcyc/MffOI5NaokPFdyf2etu/G4wL9e3bV0Tq6uq2bt2quxYAAFwi\n8ZMnvBPue3nCfd89z+0+tXrD1CSU5BJqd2K2vzoQFexEZPXq1Z06ddJbDAAA7pBoMykarph6\n7pjO2Wme/UlqiQ6lOnZsYncgPXv2VHtqMxoLAIBZEg12H159yt2vfLy1IZLUatxEBTtWThxI\nWlpa9+7dhWAHAIB5Eg121z+/JpA74tUFa5pjxr6SWqJDqcUT7HXSAjUaS7ADAMAsiQa7VY2R\noTf+40fD+/gZd00MHbuD6tevn4isXr1adyEAALhEosHuuPxATr+cpJbiMirY0bFrgerYrV+/\nvrm5WXctAAC4QaLB7q5rj1wy7bEIg64JU0OxdOxaoDp2zc3N5eXlumsBAMANEg12h98053dD\n5xx50eSPl6zeFYoltSYXiEQidXV1QrBrUXzHE6bZAQBgikT3sfN4M0REZNGYF/+473dZP7GX\n2tpa9ZkwFNuCrl275ubm7tq1a/Xq1SeffLLucgAAcDwORUgKNQ4rdOwORh0stmrVKt2FAADg\nBokGu/3sccJ2JwemVk4Iwe5g+vfvLwQ7AABM0oqOXay55oV7rz31mKGdiwqz0v0i8surbvmw\nvD5ptTlYPNhx8kTLCHYAAJgo4SPFQuUXH9bvJ1Me+HxTdMiIAY3hqIgsfP6+Uw8Z9fb2pmRW\n6Egq2Hk8Hs6KbZkKdtu3b6+pqdFdCwAAjpdosPt86v97/usdv3hk9rZ1y2ZNv0F98cNV/+lv\nrLjyF7OTVp5TqTl2ubm5fn+iy1NSkwp2wjbFAACYIeEjxZ5YWXrSs3//5di0PU6eyOw8+m/n\n9amcc3tSSnMyNrFLUJ8+fVT2ZTQWAID2SzTYfVXf3PWkYft+PX9QbqRxpakluQHHTiQoEAj0\n6NFDCHYAAJgh0WA3Oi+w+onHG/fZmfj159al5RxpclHOp4IdKycSoUZjV67knwcAALRXosHu\n9z/rX7v6r8PO/tXb87/eXhcWkaadW1+868xbl23vdd6tyazQkdRQbF5enu5CHGDAgAFCsAMA\nwAyJTu0fdc/sCR8e/twbD5/2xsPqK5n5nUUkv98Zb/xlTLKqcyzVsSsqKtJdiAOojl15eXlj\nY2NmZqbucgAAcLBEO3beQMmzCypmPTLlxNFHlHbMySjoOnTkmKvu/efGb17vn8nCz72pYMfi\niUSojl0sFmNhLAAA7dSaTOYJnP7Lu0//5d1JK8Y9WBWbuAEDBng8HsMwVqxYceihh+ouBwAA\nB2upY+dJmGXlOkI0Gt25c6ewKjYxubm53bp1E6bZAQDQbq04UgwJCgaDsVhM6NgljPUTAACY\noqVgZ+whtPOLMZ2zOh113nPvfVmxdVf99sp5/5l+/lGdOh91WWUoalm5jqDGYYXtThKmgt2K\nFSt0FwIAgLMlOsdu1o/P/zIyZvVH/ywJ+EREJGfED3/8wkfHjyvud+JVFy5//MTkleg4auWE\n0LFLmAp269evD4fDgUBAdzkAADhVokOxt3+4uf/Pb9+d6r7lC5Tc/vP+a1+8MQmFOVgwGFQP\nCHYJGjRokIhEIpE1a9borgUAAAdLNNitbozEQvucOyESbYxGGpabWpLj0bFrrYEDB6oHjMYC\nANAeiQa74/PTVz/3u9VN35tOF2laff30NYH8Y5NQmIPV1NSISE5ODqOKCcrPzy8uLhaRb775\nRnctAAA4WKLB7pbLBoSCH48adc6zc+ZtqmloqNk0b86z54w66pNgqP/FtyS1RMdRHTv2OmkV\nNRpLxw4AgPZIdPHEkXe8PXHO0GcXvX7xKa/v+fWioT9+656jklCYg6lVsfn5+boLcZJBgwZ9\n8MEHy5czrA8AQNslfqRY12cWlL/2wLU/PPrwrgUZuZ26HzH6xBv++kbl4uml319RAdWxY6+T\nVlEdu/Xr1zc1NemuBQAAp2rVkWLpZ119/1lXJ60Wt2Aotg1UsItGo6tWreJgMQAA2oaTJ8yn\nhmIJdq0ycOBAdTYd6ycAAGgzgp35VMeOvU5aJTs7u3v37kKwAwCgHQh25lMdO4Jda5WVlYnI\n119/rbsQAACcimBnslgspoIdiydai2AHAEA7EexMFgwGY7GYMMeu9Q455BAR2bRpU/zoDgAA\n0CoEO5PFQwnBrrVUsBOm2QEA0FYEO5NxUGyb9e3bNz09XRiNBQCgrQh2JlMT7IQ5dq3n9/v7\n9+8vIpw/AQBA2xDsTFZTU6MecKRYG6jRWDp2AAC0DcHOZMFgUESys7MDgYDuWpxHBbvly5cb\nhqG7FgAAnIdgZzLVsWMctm0GDx4sInV1dRs2bNBdCwAAzkOwMxkHxbZH/JTYpUuX6q0EAAAn\nItiZjINi26OoqKhLly4ismzZMt21AADgPAQ7k6mhWPY6abMhQ4YIHTsAANqEYGcyOnbtpIId\nHTsAANqAYGcyFezo2LWZWj9RUVER3xEQAAAkiGBnMhZPtJMKdoZh0LQDAKC1CHZmikajah87\ntjtps759+2ZlZYnIV199pbsWAAAchmBnpmAwGIvFhI5dO/h8PtW0W7Jkie5aAABwGIKdmdQ4\nrNCxa5+hQ4cKHTsAAFqPYGem+EGxdOzaQ21TvGrVqvr6et21AADgJAQ7M8U7dgS79lAdu1gs\n9vXXX+uuBQAAJyHYmUl17DweT35+vu5aHGzQoEHp6eki8r///U93LQAAOAnBzkxqSWxubq7f\n79ddi4OlpaWVlZUJ0+wAAGglgp2ZVMeOcdj2GzZsmNCxAwCglQh2ZlJz7FgS236HHXaYiKxY\nsaKhoUF3LQAAOAbBzkx07Mxy+OGHi0g0Gl26dKnuWgAAcAyCnZno2Jll0KBBmZmZIrJo0SLd\ntQAA4BgEOzNxUKxZfD7fkCFDRGTx4sW6awEAwDEIdmYi2JlITbMj2AEAkDiCnZkIdiZSwW7N\nmjW1tbW6awEAwBkIdqYJh8PqCCyCnSmOOOIIETEMg2l2AAAkiGBnmvhBsSyeMEWfPn3UJ7lw\n4ULdtQAA4AwEO9NwUKy5PB6P2qZ4wYIFumsBAMAZCHamiU8FKygo0FuJa6jRWDp2AAAkiGBn\nmu3bt6sHRUVFeitxDRXstm/fvmHDBt21AADgAAQ706iOnd/vz8nJ0V2LSwwfPtzj8YjI/Pnz\nddcCAIADEOxMozp2hYWFKoug/Tp06NC7d28h2AEAkBiCnWk4TywZRo4cKSLz5s3TXQgAAA5A\nsDON2u6EJbHmGjFihIgsW7ZM7REIAABaQLAzDR27ZDjyyCNFJBKJcLYYAAAHRbAzTXyOne5C\nXGXQoEF5eXnCaCwAAAkg2JkmGAwKwc5sXq93+PDhQrADACABBDvTbNu2TRiKTQK1fuLLL7+M\nxWK6awEAwNYIduYwDGPnzp1CsEuCUaNGiUhtbe2KFSt01wIAgK0R7MwRDAYjkYgwFJsEI0aM\nCAQCIvL555/rrgUAAFsj2JlDLYkVzhNLgszMzCFDhojIF198obsWAABsjWBnjniwy8/P11uJ\nK6nRWDp2AAC0jGBnjniwY45dMhx11FEiUllZuXHjRt21AABgXwQ7c6hN7DweD3PskuHoo4/2\ner0i8umnn+quBQAA+/LrLiCJfD5fTk6ONe/V0NAgInl5eW4NdipXWfZ57iUnJ2fw4MFLliz5\n8ssvL7vsMi01aKQ+/LS0NF2ffyrzeDyi785PcT6fT7jzNVF3fnZ2tu5CUpG68/1+/4Hu/JY3\n/6JjZw7VsWMcNnmOO+44Efnwww91FwIAgH25uWMXjUZVI80C1dXVIlJQUFBXV2fNO1rM7/cH\nAgGNv506NLa8vHz58uXdu3fXVYYWBQUFXq+3ubnZrXeXnfn9/vT0dD55LfLz87nzdfH5fOnp\n6fX19YZh6K4l5ag7PxKJtHDnZ2VlHehbdOzMUVNTI2xil0zHHHOMGhr45JNPdNcCAIBNEezM\noYJdx44ddRfiWh06dCgrKxORjz/+WHctAADYFMHOHGqOHR27pBozZoyIzJ07l6EBAAD2i2Bn\nDtWxY/FEUqlgV11dvWrVKt21AABgRwQ7c6gNigl2SXXMMcekpaWJyEcffaS7FgAA7IhgZ4KG\nhoZQKCQMxSZZdnb28OHDhWAHAMABEOxMoCbYCR275Dv++ONF5L///W9zc7PuWgAAsB2CnQnU\nBDsRKSoq0luJ6/3gBz8QkV27di1cuFB3LQAA2A7BzgTxYEfHLtmGDx9eUFAgHEEBAMD+EOxM\nEA92zLFLNp/Pd+yxxwrBDgCA/SHYmUAtic3Ozk5PT9ddi/up0dhFixapjx0AAMQR7EygFk8w\nDmuNE088UUSi0ShNOwAA9kKwM4EaimXlhDVKS0sHDBggIv/5z3901wIAgL0Q7Eyggh0T7Cyj\nmnbvvfdeLBbTXQsAADZCsDMBHTuLqWC3ffv2r776SnctAADYCMHOBGoWv9qGAxY4+uijc3Jy\nRGTOnDm6awEAwEYIdiZQiyfo2FkmEAiotbHvvvuu7loAALARgp0JVMeOOXZWOuWUU0Tkf//7\nX3V1te5aAACwC4JdezU0NDQ2NopIx44dddeSQk4++WSv12sYBqOxAADEEezaS43DCh07a3Xs\n2PHwww8XkXfeeUd3LQAA2AXBrr3i5x8wx85ip556qojMnTtXdUwBAADBrr22bdumHhDsLDZ2\n7FgRaWxs/OCDD3TXAgCALRDs2is+FMuRYhYrKyvr06ePiMyePVt3LQAA2ALBrr3UUGxOTk4g\nENBdS8pRo7HvvvtuNBrVXQsAAPoR7NpLHTtBu06L008/XURqamo+++wz3bUAAKAfwa691FAs\ne51oMXLkyC5duojIm2++qbsWAAD0I9i1lwp2dOy08Hq9p512moi88cYbsVhMdzkAAGhGsGsv\nNRRLx06XcePGiciWLVsWLFiguxYAADQj2LWXCnYFBQW6C0lRo0ePVu3SmTNn6q4FAADNCHbt\npfaxYxM7Xfx+v1pCMXPmTEZjAQApjmDXLoZh1NbWCsFOqzPPPFNENm3axGgsACDFEezaJRgM\nNjc3C4sntDruuOPUHMfXX39ddy0AAOhEsGuX+EGxBDuNGI0FAEAh2LUL54nZxNlnny0imzdv\nZqdiAEAqI9i1S11dnXrAqli9jjnmGLVT8YwZM3TXAgCANgS7djEMQz3weDx6K0lxPp9PLaF4\n44031KxHAABSEMEOLvGjH/1IRGpqaubOnau7FgAA9CDYwSWOPPLI3r17i8grr7yiuxYAAPQg\n2ME91BKKt956q76+XnctAABoQLCDe5x77rki0tDQ8Pbbb+uuBQAADQh2cI8BAwYMHTpURP79\n73/rrgUAAA0IdnAV1bSbO3fuli1bdNcCAIDVCHZwlXPPPdfv90cikddee013LQAAWI1gB1fp\n1KnTmDFjROTFF1/UXQsAAFYj2MFtzjvvPBH56quvli9frrsWAAAsRbCD24wbNy4vL09o2gEA\nUg/BDm6TkZExbtw4EXnppZcikYjucgAAsA7BDi504YUXisjWrVs//PBD3bUAAGAdgh1caNSo\nUb169RKRf/7zn7prAQDAOgQ7uJDH41FNu7fffrumpkZ3OQAAWIRgB3e64IILvF5vOBx+9dVX\nddcCAIBFCHZwp9LSUrWh3QsvvKC7FgAALEKwg2tddNFFIrJkyZIlS5borgUAACsQ7OBa48aN\n69Chg9C0AwCkDIIdXCsQCIwfP15EXn755VAopLscAACSjmAHN5swYYKI1NbWvvnmm7prAQAg\n6Qh2cLNDDjlk6NChIjJ9+nTdtQAAkHQEO7jcT3/6UxH573//u379et21AACQXAQ7uNw555yT\nmZlpGAZNOwCA6xHs4HJ5eXlnnXWWiLzwwgvNzc26ywEAIIkIdnA/tYRiy5Ytc+bM0V0LAABJ\nRLCD+40cOXLgwIEi8uyzz+quBQCAJCLYISWoJRQffPBBeXm57loAAEgWgh1Swvnnn5+enh6L\nxVhCAQBwMYIdUkKHDh3OOOMMEZk+fXokEtFdDgAASUGwQ6q4+OKLRaSqqurtt9/WXQsAAElB\nsEOqGDVqVFlZmbCEAgDgXgQ7pJCJEyeKyIcffrhu3TrdtQAAYD6CHVLI+eefn5WVZRjG008/\nrbsWAADMR7BDCsnLyxs/fryITJ8+vbGxUXc5AACYjGCH1PLzn/9cRILB4Ouvv667FgAATEaw\nQ2oZOnToiBEjROSpp57SXQsAACYj2CHlXHLJJSKycOHCRYsW6a4FAAAzEeyQcs4666xOnTqJ\nyJNPPqm7FgAAzESwQ8oJBAI/+clPRGTGjBnbt2/XXQ4AAKYh2CEVXXLJJWlpaaFQiM2KAQBu\nQrBDKiouLh47dqyIPPnkk83NzbrLAQDAHAQ7pKhf/OIXIlJVVTVr1izdtQAAYA6CHVLU0Ucf\nfeihh4rIY489prsWAADMQbBD6po0aZKIzJ8/f/78+bprAQDABAQ7pK7x48d37txZaNoBANyC\nYIfUFQgE1GbFb775Znl5ue5yAABoL4IdUtoll1ySlZUViUQeffRR3bUAANBeBDuktMLCwosu\nukhEpk+fXlNTo7scAADaxa+7gO9UzX/jsVc+WLN2g5HdaeiYM6+aeFqW17PXNX+acN7cYCj+\ntMuoOx+feqi1ZcJtrrjiiqeffrq+vv4f//jH7373O93lAADQdnYJduHgJ7+Z9kSHkef8aurl\nmc3Vs555dEpT579cMeJ7FxnN8+rCI6+87qSCdPWFjA49NdQKd+nV8DoOgAAAIABJREFUq9cZ\nZ5zx2muvPf7441deeWV2drbuigAAaCO7BLuKt/4dzSj7640T/R4RGThwYNYFP3tErvjeGe3h\nusUNUWP8mNGHZO2/7Fgstnnz5vjTQCDg9yf3F/T5fPEH8ceu5PV6ZY/f12Wuvfba119/fceO\nHdOnT//lL3+pu5z983g8bv387czdd77NeTwe4c7XJH7nG4ahu5aUc9A7v+X/KHYJdtmlJ170\nk/7+3UOvXn+Ox1+41zWh2s883oyPH5hy5+J1aQXdRpx64RXjR/v3GK0NBoNnnXVW/OmkSZPU\nRmXJk5OTox7k5+cXFu5dsPu49XccM2bMaaed9tZbbz388MO//e1vMzIydFe0H+np6enp6bqr\nSFFuvfMdgTtfo4KCAt0lpK5AIBAIBPb7rWg02sIP2mXxRJfjzjj3jEHqcaRhw99uu/PQ867a\n65rapRUiRqTs9Jvvvu83Pzu9cuYDt7+53upC4VI333yziGzatOnJJ5886MUAANiTx1ZdViNa\nP/e151/493+HnnvlVecevdfSiWhTfUMkLTfn2wBbV/HyxdfPf+Vf93x3QTS6cuXK+NPc3Nx4\nRy1J3n///XPOOUdEVqxYoba6dSufz5ebm1tbW6u7kCQ6++yz586dW1JSsmDBAlt1CHJzc30+\nXygUamxs1F1LykmFO9+2cnJy/H5/OBxuaGjQXUvK8Xq9eXl5wWDQViEhRRz0zjcMo4VhBLsM\nxYrIzjXv33PPY8aQsyb/7R99C/fTfvRlZOfu8TS7+ORI00vfu8DnKysriz9taGhI9h8H8XZo\nJBKJRCJJfS87cPfveMMNN8ydO7eysvKpp5667LLLdJfzHfUHq2EY7v787YxPXgt158diMT5/\n66nZXZFIhGBnvXb+mW+Xodhw8LNrJj8yeOLdd1/94/2mOhF5deq1Nz20MP60sfqDQO5IqwqE\n+40cOfIHP/iBiDz44INNTU26ywEAoNXsEuyWPvxkXfaYvmlbPt+D+lb8HM+jfth16Xt3PPDs\nq/OWfjP/k9nTbnzhxGt/pq1iuNHkyZNFpKqq6u9//7vuWgAAaDW7DMV+sTLYtOO9u+56b88v\nzpw5U0RmzZp1+eWXi0jJSZP/5HvuHzPfu+/1f3Uo7XXCpdMuGN5RT7lwqREjRpx22mmzZ89+\n6KGHJk6cyIowAICz2CXY/fLplw60e5iKd0q/EybcfcIEa0pCapo6deq7775bW1v75z//+Q9/\n+IPucgAAaAW7DMUCNjFo0KALL7xQRJ544ol169bpLgcAgFYg2AF7mzp1ak5OTjgcvu2223TX\nAgBAKxDsgL117tz56quvFpHZs2fPmTNHdzkAACSKYAfsx5VXXtmvXz8RufHGG9kWGADgFAQ7\nYD8CgcA999zj8Xg2bNhwzz33HPwHAACwAYIdsH/HH3/8BRdcICKPPfbYggULdJcDAMDBEeyA\nA7r99tu7dOkSjUavvPJKTqsEANgfwQ44oMLCwvvvv19E1q5de9NNN+kuBwCAgyDYAS055ZRT\nLr74YhF5/vnnX375Zd3lAADQEoIdcBDTpk0rKysTkeuuu27ZsmW6ywEA4IAIdsBBZGRkPPXU\nU7m5uQ0NDT/96U+3bNmiuyIAAPaPYAccXN++ff/+97/7fL6Kiorzzz+/trZWd0UAAOwHwQ5I\nyEknnTRt2jQRWbZs2QUXXBAMBnVXBADA3gh2QKIuu+yyKVOmiMjChQvHjx+/detW3RUBAPA9\nBDugFa677rrJkyeLyFdffTV27NgVK1borggAgO8Q7IDWuf7666dNm+b1ejdu3Dh27NiZM2fq\nrggAgG8R7IBWu/zyy//xj39kZ2fX1dVdeuml11xzzc6dO3UXBQAAwQ5ok3Hjxr3zzjuDBg0S\nkenTp48ePXrGjBm6iwIApDqCHdBGAwcOnDNnzqRJk7xeb1VV1aRJk84444yFCxfqrgsAkLoI\ndkDbZWRk3HnnnbNmzRo6dKiIfP7552PHjr3sssvWrl2ruzQAQCoi2AHtNWLEiDlz5tx///1d\nunQxDOP1118/9thjr7/++urqat2lAQBSC8EOMIHX650wYcKXX345ZcqU3Nzc5ubmZ555ZuTI\nkffff38oFNJdHQAgVRDsANNkZWVdd9118+fPv/zyywOBQENDw913333cccfNnTtXd2kAgJRA\nsANM1qFDh2nTpn366afjxo0TkXXr1p133nnXX399Y2Oj7tIAAC5HsAOSomfPnk899dRLL73U\no0cPwzCeeeaZk08++ZtvvtFdFwDAzQh2QBKdcMIJH3300cSJE0VkxYoVp5122jvvvKO7KACA\naxHsgOTKzs7+05/+FD+p4uKLL37hhRd0FwUAcCeCHWCFM888c/bs2aWlpdFo9Jprrnn66ad1\nVwQAcCGCHWCRsrKyN998s1+/foZh3HDDDf/61790VwQAcBuCHWCdkpKSGTNm9OnTxzCMa6+9\n9v3339ddEQDAVQh2gKW6du36yiuvFBcXRyKRSy+9dPny5borAgC4B8EOsFppaek///nPnJyc\nurq6iRMn7tixQ3dFAACXINgBGgwePPjhhx/2eDzr16//9a9/bRiG7ooAAG5AsAP0OP3006+9\n9loReeeddx599FHd5QAA3IBgB2hzww03jB49WkSmTZvGZDsAQPsR7ABtfD7fI488kp+fHw6H\nr7rqqubmZt0VAQCcjWAH6NStW7e77rpLRJYsWfLII4/oLgcA4GwEO0Cz888//5RTThGR//u/\n/1u3bp3ucgAADkawA/S79957c3JympqapkyZorsWAICDEewA/UpLSydPniwi77///ptvvqm7\nHACAUxHsAFu47LLLysrKROTWW28NhUK6ywEAOBLBDrAFv99/9913i0h5eTmrKAAAbUOwA+xi\n9OjR48aNE5EHH3ywurpadzkAAOch2AE28vvf/z4QCNTX1//xj3/UXQsAwHkIdoCN9OzZ85JL\nLhH5/+3deVxU9eL/8c8wMwyL7LuyK4oiapqGW9fU0iwtd7Msl1JzTS3L9KbXrmYqLrmltn1N\nvX31VlqacTXRlNwSTEEUBCRAlB3ZB4b5/XFu/PxaCgLDmRlfzz/ug5k5c84b7gd89/mcc0bs\n3r07ISFB7jgAABNDsQOMy5w5cxwcHKqqqqQbFwMAUHcUO8C4ODs7z5gxQwjxww8/REdHyx0H\nAGBKKHaA0Zk8ebKHh4der5eukwUAoI4odoDRsbGxmTNnjhDi2LFjp06dkjsOAMBkUOwAYzRu\n3DhfX18hxLJly+TOAgAwGRQ7wBhZWlq+8cYbQogzZ85ERkbKHQcAYBoodoCRGjNmjDRp9/77\n78udBQBgGih2gJFSq9XSmXYnTpw4evSo3HEAACaAYgcYr9GjR0uTdkuXLpU7CwDABFDsAOOl\nVqulM+2OHz9+4sQJueMAAIwdxQ4waqNHj/bz8xNC8EEUAIBaUewAo2Zpafn2228LIY4dO3bm\nzBm54wAAjBrFDjB248ePlybtwsPD5c4CADBqFDvA2KnV6jfffFMIERkZefbsWbnjAACMF8UO\nMAGvvfZa8+bNhRBr166VOwsAwHhR7AAToNFopHvaHTlyJCYmRu44AAAjRbEDTMOkSZPc3d2F\nEKtXr5Y7CwDASFHsANNgbW09bdo0IcThw4cvXLggdxwAgDGi2AEmY8KECa6urnq9ftWqVXJn\nAQAYI4odYDJsbGxmzJghhDh8+DBn2gEA/oxiB5iSSZMmeXp66vX6lStXyp0FAGB0KHaAKbGy\nspo5c6YQ4siRI+fOnZM7DgDAuFDsABPzyiuveHl5CSGWLVsmdxYAgHGh2AEmRqPRzJ07VwgR\nFRV17NgxueMAAIwIxQ4wPS+++KK/v78QYtmyZXq9Xu44AABjQbEDTI9arX7nnXeEEBcuXNi/\nf7/ccQAAxoJiB5ikoUOHhoaGCiGWL1+u1WrljgMAMAoUO8AkWVhYvPfee0KIlJSUzz77TO44\nAACjQLEDTFWfPn369+8vhAgPD8/Ly5M7DgBAfhQ7wIQtWbJEpVIVFBRw6xMAgKDYASatTZs2\nEydOFELs3Lnz/PnzcscBAMiMYgeYtrffftvd3b26uvqtt96qqqqSOw4AQE4UO8C02dvbL126\nVAhx6dKlLVu2yB0HACAnih1g8oYPH96vXz8hxMqVKxMTE+WOAwCQDcUOMAfh4eF2dnbl5eXT\np09nQRYAHloUO8ActGjRQrowNiYm5sMPP5Q7DgBAHhQ7wEy88MILzz77rBDio48+ioyMlDsO\nAEAGKrkDGJBSqbS1tTXoIaysrKQvbGxsDH0seVlYWAghzPt7NFrSD1+lUtX689++fXtYWFhq\nauqUKVNOnDgRGBjYJAHNGSNfRkqlUtRt5KPRKRQKIYSNjY3cQR5GtY786urq+7zdnIud+OOP\nchPs38LCwtDHkpf0S27e36ORUygUtf78nZycdu3a1b9///z8/JEjR/7000/Ozs5NE89cMfJl\nV5eRj0bHyDcG9/r5S//v3Is5FzudTldaWmrQQ9Tsv7i42Lz/y0alUllaWhYVFckd5GHk6Oho\nYWFRWVlZXFxc68Zt2rRZs2bNtGnT4uPjn3vuuX//+9/mPTINjZEvIwcHh7qPfDQupVJpaWlZ\nXFys1+vlzvLQkUZ+VVXVff7y1CwY/hllHDA3I0eOXLBggRDi3Llzo0aNun37ttyJAABNhGIH\nmKG5c+e+/vrrQogzZ848++yzaWlpcicCADQFc16KBR5mS5cutbGxCQ8Pj4+P79+//9q1awcN\nGtTw3d66dSsjIyMvL086D8HCwsLFxaV58+a+vr73P+0DANAEKHaA2XrnnXf8/f3nzZuXl5f3\nyiuvDB48+B//+IePj0/d91BdXZ2QkBAdHX3hwoXY2Nj4+Ph7ne1kZ2f32GOP9evXb8iQIe7u\n7o30HQAAHozCjM+LLC0tNfTFE5GRkaNGjRJCxMXFmfc/ZiqVytHRMScnR+4gDyNHR0eVSlVe\nXl6/U8gvXrz4+uuvJyQkCCHUavXzzz8/YsSInj17ajSav9w+MzPz0qVLMTEx58+f//XXXx/0\nugGVSvXMM8/MmDGjU6dO9UhrbBj5MnJwcFCr1fUe+WgIpVLp5OSUm5trxiXBaEkjv6Ki4j5/\nfl1dXe/1EjN2gJnr0KHD0aNH169fv3HjxrKysr179+7du1ej0bRr165ly5aurq6WlpYlJSU5\nOTkZGRlJSUn5+fl37UGpVLZu3bpDhw5t27Zt1aqVr6+vq6ur9KensLCwoKDg+vXrMTExx48f\nP336dFVV1f79+7/77rtnn3126dKl3t7esnzXAPBwYsauQZixQxNo4IxdjZycnO3bt+/du7cu\n11K4urp26dLl0Ucf7dq1a6dOnep4h9hbt27t3r17+/bt2dnZQghbW9vly5ePHTu2IbHlxciX\nETN2MmLGTkYNnLGj2DUIxQ5NoLGKnUSv18fGxp45cyY2NjYtLa2wsLCyslKtVru4uHh5eQUG\nBrZu3To0NLRFixb1PkRpaemWLVvWrl1bUVEhhBg9enR4ePi9Vn6NHCNfRhQ7GVHsZMRSLIAH\noFAoQkNDQ0NDDXcIGxubefPmDR06dMqUKRcuXPjf//3f5OTknTt38jEYAGBo3McOgEEEBgYe\nPHjwpZdeEkKcO3duyJAhmZmZcocCADNHsQNgKJaWlmvXrl20aJFCobh69erQoUOzsrLkDgUA\n5oxiB8CwZs+evXLlSoVCkZSUNGLEiMLCQrkTAYDZotgBMLjx48cvX75cCBEfH//yyy9rtVq5\nEwGAeaLYAWgKr7766ptvvimE+OWXX95++2254wCAeaLYAWgi8+fPl24PtHPnzh07dsgdBwDM\nEMUOQBNRKBTh4eHSR429++67ly5dkjsRAJgbih2ApmNlZfXZZ585OjpWVFS8+uqrJSUlcicC\nALNCsQPQpHx8fDZs2KBQKJKTkxcuXCh3HAAwKxQ7AE1t4MCBEyZMEELs2rXr0KFDcscBAPNB\nsQMggyVLlgQFBQkh3nzzzby8PLnjAICZoNgBkIG1tfWGDRuUSmVWVta7774rdxwAMBMUOwDy\n6NKly/Tp04UQX3/99ZEjR+SOAwDmgGIHQDZvvfVWYGCgEGL+/PmlpaVyxwEAk0exAyAbKyur\n8PBwhUKRlpa2evVqueMAgMmj2AGQU69evUaPHi2E+Pjjj+Pj4+WOAwCmjWIHQGZLlixxcnKq\nrKxcsGCBXq+XOw4AmDCKHQCZubi4LFiwQAgRFRX17bffyh0HAEwYxQ6A/F5++eUOHToIIZYs\nWcJVFABQbxQ7APJTKpUrVqxQKBSZmZnr1q2TOw4AmCqKHQCj0LVr1xEjRgghNm/enJqaKncc\nADBJFDsAxuLvf/+7ra1tRUXF4sWL5c4CACaJYgfAWHh5ec2ePVsIcfDgwZMnT8odBwBMD8UO\ngBGZNm2ar6+vEGLRokU6nU7uOABgYih2AIyIRqNZsmSJECIuLm7Xrl1yxwEAE0OxA2BcBg8e\n3L17dyHEBx98cPv2bbnjAIApodgBMDrLli2zsLDIyclZs2aN3FkAwJRQ7AAYndDQUOkDZLdv\n356cnCx3HAAwGRQ7AMZo4cKFzZo102q17733ntxZAMBkUOwAGCMPD485c+YIISIiIiIjI+WO\nAwCmgWIHwEhNnTo1ICBACLFw4UKtVit3HAAwARQ7AEbK0tLy/fffF0IkJiZu375d7jgAYAIo\ndgCM14ABA/r16yeEWL16dWZmptxxAMDYUewAGLUPPvhAo9EUFxfzAbIAUCuKHQCjFhAQMGPG\nDCHEt99+e+zYMbnjAIBRo9gBMHZvvPGGn5+fEGL+/Pnl5eVyxwEA40WxA2DsrKysVq1aJYRI\nSUkJDw+XOw4AGC+KHQAT8MQTTwwbNkwIsWnTptjYWLnjAICRotgBMA3Lly93dnaurKycMWMG\nt7UDgL9EsQNgGlxcXFasWCGEiIuLW7lypdxxAMAYUewAmIyhQ4cOGTJECLFx48ZffvlF7jgA\nYHQodgBMyapVq7y8vHQ63dSpU/Py8uSOAwDGhWIHwJQ4Ozt//PHHSqUyMzNz8uTJOp1O7kQA\nYEQodgBMTI8ePebPny+EOH78uPRhsgAACcUOgOmZM2fO008/LYTYtGnTzp075Y4DAMaCYgfA\n9CgUik2bNrVr104IMX/+/B9//FHuRABgFCh2AEySnZ3d7t27vby8KisrX3311cjISLkTAYD8\nKHYATFWLFi327t3r7OxcUVHx0ksvffvtt3InAgCZUewAmLA2bdp88803bm5uWq12ypQpy5Yt\nq6qqkjsUAMhGJXcAAGiQkJCQAwcOjB07Nikpad26dSdOnFi7dm3btm3rt7esrKzExMS0tLSM\njIyioqKSkhInJyeVSuXp6enn5xcaGurs7Ny4+QGgEVHsAJi8wMDAiIiIGTNm/Pjjj+fPn+/b\nt+/YsWNnzZrl5+dX63vz8vKio6N//fXX6Ojoixcv5ubm3n/7Vq1a9enTZ8iQIWFhYQqFopG+\nAwBoHAq9Xi93BkMpLS0tLS016CEiIyNHjRolhIiLi3N3dzfoseSlUqkcHR1zcnLkDvIwcnR0\nVKlU5eXlxcXFcmcxdrt3716yZEl+fr4QwsLConv37k888cQjjzwSEBBgZ2cnhKiurs7KykpN\nTb169WpsbOxvv/2WnJz85/0olUo3NzcnJyeNRiOEyMnJycrK0mq1d27j5+c3YcKEcePG2dvb\nN8k399BxcHBQq9WMfFkolUonJ6fc3FwzLglGSxr5FRUVRUVF99rG1dX1Xi9R7BqEYocmQLF7\nIHl5eevWrduxY0dJSUnd3+Xi4tKlS5eOHTu2b98+ODjYx8dHrVaLO0Z+dXV1SkrKhQsXoqKi\nIiIisrKypDfa29tPnjx52rRpUnFEI6LYyYhiJyOK3T1R7BoRxU5GFLt6KCgo2Ldv38GDB3/9\n9de//Lk5ODi0bdu2Y8eOnTp16tq1670Wbf9y5Ot0uuPHj3/++ef/+c9/qqurhRAuLi4LFiwY\nN26chQVXpDUaip2MKHYyotjdE8WuEVHsZESxawidTpeWlpaenp6fn6/X662trR0dHf38/Or4\nC3v/kZ+YmLhmzZpvvvlGqnedO3det25dva/bwF0odjKi2MmogcWOiycAmDOlUunv7+/v72+I\nnQcFBW3ZsmX69OnvvvvuqVOnoqOj+/XrN2/evNmzZ6tU/HUFIANWDQCgQdq3b79///4NGzY4\nOTlVVlauWLHimWee+ctrMgDA0Ch2ANBQCoVizJgxUVFRAwcOFEJER0f37dv3q6++kjtXI8vO\nzr58+XJUVNTx48ePHz9+5syZhISEwsJCuXMB+P9YLACAxuHm5vbll1/u2rVr4cKFJSUlM2fO\nPHHixMqVK21tbeWOVk+JiYlRUVHnz5+Pi4u7du1aWVnZX27m6OgYFBTUvn37zp079+zZ08fH\np4lzAqhBsQOAxvTiiy+GhYVNnjz54sWLe/bsiYmJ+fTTT03oiorq6uqzZ8/u378/IiIiLS2t\nLm8pKCg4d+7cuXPnPv/8cyFEYGDgk08+OWjQoMcee0ypVBo4L4D/g2IHAI2sZcuWhw4dWrx4\n8SeffJKYmDhgwICVK1eOGTNG7ly1SEtL27Vr1549e+7scyqVKiQkpEOHDsHBwQEBAR4eHo6O\njvb29pWVlcXFxbm5uTdv3kxJSbl69epvv/2WkJBQXV2dnJy8devWrVu3enh4PP/882PGjGnf\nvr2M3xfwUKHYAUDjs7S0/OCDD3r06DF79uyioqKZM2f+8ssvH374obW1tdzR/sLJkye3bdsW\nEREh3bdFCOHm5vb0008/9dRTvXr1utdSspubW0BAwJ3P5Ofnnzx58qeffoqIiMjJybl165bU\n8Dp06DBu3LgRI0Y0a9bM4N8M8HDjPnYNwn3s0AS4j52MGj7yU1JSJk2adOnSJSFEcHDw9u3b\ng4ODGy9gg1RXVx88eHD9+vW//fab9IxGoxk8ePDo0aN79+7dkFVUnU536tSpffv27d+/v6Cg\nQHrSzs5u1KhRkyZNCgoKqstOuI+djLiPnYwaeB87rooFAAMKCAg4dOjQ+PHjhRBXrlx56qmn\nvvzyS7lDiaqqqj179vTq1WvixIlSq/Px8Vm8ePGlS5e2bNnSp0+fBp4bp1Qqe/XqtXr16tjY\n2K1bt/bs2VOhUBQVFX366ac9e/YcOXLkjz/+WDM7CKARUewAwLA0Gs2qVau2bdtmZ2dXVlY2\nd+7cCRMm5OXlyRKmqqrqq6++6tGjx/Tp0xMTE4UQISEhW7duPXv27IwZM5ycnBr3cBqNZtiw\nYfv27YuKinrttdfs7Oz0ev2xY8fGjRvXrVu3zZs35+fnN+4RgYccxQ4AmsLQoUOPHj3auXNn\nIcSBAwd69+596NChpgwgVbru3bvPnDkzJSVFCPHoo4/u2rUrMjJy2LBhhv6ojKCgoOXLl1+8\nePHDDz+UlmJTU1MXL17coUOHWbNmRUdHG/TowMODYgcATcTf3//AgQNz585VKpVZWVkvv/zy\na6+9lpWVZejjarXanTt3hoWFzZw58/r160KIrl277tmz59ChQ0899ZRCoTB0gBrNmjWbOHFi\nVFTUnj17BgwYYGFhUV5e/q9//WvAgAF/+9vftm3bxom8QANR7ACg6ajV6gULFhw8eLBNmzZC\niH379nXv3n3r1q2VlZWGOFxJScm2bdu6des2Z86c1NRU8Uel++GHH5544glDHLEuFArFE088\nsXPnznPnzs2aNUs6Dfzy5csLFy4MDQ0dM2bMV199JddSNWDquCq2QbgqFk2Aq2JlZLiRr9Vq\nw8PDN27cqNVqhRAtW7ZcsGDB4MGDLSwa57+309PTv/jiix07dtScxBYWFjZv3rw+ffo0yv4b\nkVar/fHHH3fu3Hn8+PGaKyqUSmXPnj0HDRr0+OOPBwYGcqPjJsZVsTJq4FWxFLsGodihCVDs\nZGTokZ+YmLhw4cLIyEjpYevWradNmzZ8+HArK6v67VCr1R49enTXrl2HDx/W6XRCCIVC0bdv\n3zfeeCMsLKzRchtGZmbmt99+u2/fvpiYmDuft7Oz69KlS6dOnUJDQ6X7JKvVarlCPiQodjKi\n2N0Txa4RUexkRLGTUdOM/J9++umf//xnbGys9NDR0XHYsGFDhw7t1q1bHSfwysrKoqKifvjh\nh4MHD9YsYlpaWg4fPnzq1Knt2rUzVHTDSE9Pj4iIOHbs2M8///znP+Mqlcrb29vb27t58+bu\n7u5ubm7Ozs729vb29vZ2dnYODg7W1tZWVlYODg6yhDcPFDsZUezuiWLXiCh2MqLYyajJRr5e\nr4+IiNi0adPp06drnnR2du7Ro0fnzp3btm3r4+Pj5ubm6OhoYWFRVlZWUFCQnp6elJR0+fLl\n6OjomJgYaUlXEhQUNHbs2BdeeMHFxcXQyQ3HwcGhurr65MmTkZGRMTExFy5cuHHjxgPtwdbW\n1tbWVmp7Dg4OLi4uzs7Obm5unp6eHh4ezZs39/X1Nc7PAmmI0tLS8vLyuzqBSqWytbVt1qxZ\nHS9/NlCxKy0traiouH379l3PN2vWzNra2sbGphGPZboaWOz4SDEAkJ9CoRg4cODAgQPj4uJ2\n7dq1b9++7OzsvLy8AwcOHDhwoI478fb2HjRo0LBhw7p06WLQtE1Go9H07NmzY8eO0sP8/Pyr\nV69eu3YtNTU1IyMjIyMjJycnJyfnXldalJSUlJSU3P+6Y+mD0QIDA1u2bBkUFNS2bVs/Pz/j\nP6UvJycnOTk5JSXl999/T0tLu3nz5s2bN3NycvLz86uqqu7zRisrK0dHRycnJycnJ7c/eHh4\nuLq6urq6enh4uLi41K/s3r59OysrKzc3Nzs7WwqTlZVV839Qfn5+YWGhdHrAvahUKicnJymG\np6enNC/r6+vr7+/fokWLxjr9tH50Ol16enpqamp6enp6enqWF9doAAARS0lEQVRGRob0G5qT\nk3P79m2psAoh1Gr1hg0bhg8fLmNUZuwahBk7NAFm7GQk18jX6XRnz549evTo2bNnY2Nj/zzD\nIbGwsPD19X3kkUe6du3aq1evtm3bNnFOg3qgjxQrKCgoKioqKioqKSkpLS2V/q0tLS0tKiq6\nffv27du3CwoK8vLysrOzpeZxn8+90Gg0bdq0afeH9u3byz7xmZWVdfny5StXrly9evXq1auJ\niYk1H9RmCNbW1lLBsrGxsba2trOzU6lUNZ/zW11dLQ3IwsLCkpIS6Webn59voCu7JZaWli1b\ntmzZsmWrVq1atWoVFBTUsmVLw6225+bmJiYmXrt27dq1a0lJSUlJSampqXdOit/HmDFjNmzY\n0JCjM2MHAOZGqVR27969e/fu0sPMzMz09PTc3FytVqvT6ZRKpb29vaenZ0BAgEajkTeqkXB0\ndHR0dKzjxlVVVdnZ2enp6WlpaampqcnJyUlJSdeuXZOuIK6oqLh48eLFixdrtnd3dw8JCQkJ\nCQkODg4ODg4KCjLoomF+fn5iYuKVK1fi4+OvXLly+fLle01JKhQKT09PHx+f5s2bS7NuLi4u\nDg4OdnZ2FhYWNQuvZWVlFRUVZWVlNT0s7w+3bt2SJtXurGVlZWVlZWUPuvB9J2tra3d3d3d3\nd2ki0MXFxcnJqeY8SAsLC3t7+5oZOGkmr6ioqLCwMDc3V2re6enpN27cyMzMlCYgtVptfHx8\nfHz8nUdxc3Nr1aqVv7+/v7+/NLfn5eXl6elZ91+K0tLSjIwM6fcrNTX1+vXrKSkpycnJhYWF\n93qLSqVyd3f39vZ2d3f38PBwdHS0s7Ozs7OztLTcvHnzXQllYVzFLnrfxs++/yVP7xQ2eNKs\noZ3rvQ0AmBMvLy8vLy+5U5gPlUol/Ui7du165/M5OTnx8fFXr169fPlyXFzclStXpGWfrKys\nrKysmouXFQqFt7d3q1atAgMD/f39/fz8vL29PT093dzcHihGZWWl1GAyMjJqWkVCQsK9Zoht\nbGxat24tNUtp4srf39/S0rJeP4O7SXUqNzc3KysrLy+voKBAq9VmZ2cXFhZWVFSUl5fftX2z\nZs3UarW9vb2jo6O9vb2zs7NU4KSFVFtb20ZJVVVVlZGRIS06JyYmSv07PT1dWmzMzs7Ozs4+\nderUXe+S8jg4ONjb26vV6pq5RiFEUVGRdJJfQUFBbm5uWVnZfY6uUql8fX2lH3VgYGBAQIC/\nv3/z5s3vdZ7inj17GvoNNwYjKnY5MRve33116uz5HuLWJ+vf3+C/feYjd8801mUbAADqwdXV\ntXfv3r1795YeVldXX79+PS4uLi4uLj4+/vLly7///nt1dbVer09LS0tLS6upehK1Wi1NTUmz\n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\nSUVORK5CYII=",
      "text/plain": [
       "plot without title"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "df$`换手率(%)` <- as.double(df$`换手率(%)`)\n",
    "ggplot(df) +\n",
    "  geom_density(aes(`换手率(%)`))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 67.计算前一天与后一天收盘价的差值"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "df %>%\n",
    "  summarise(delta = `收盘价(元)` - lag(`收盘价(元)`))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 68.计算前一天与后一天收盘价变化率"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "df %>%\n",
    "  summarise(pct_change = (`收盘价(元)` - lag(`收盘价(元)`))/lag(`收盘价(元)`))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 69.设置日期为索引"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 81,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Warning message:\n",
      "“Setting row names on a tibble is deprecated.”"
     ]
    },
    {
     "data": {
      "text/html": [
       "<table>\n",
       "<thead><tr><th></th><th scope=col>﻿代码</th><th scope=col>简称</th><th scope=col>前收盘价(元)</th><th scope=col>开盘价(元)</th><th scope=col>最高价(元)</th><th scope=col>最低价(元)</th><th scope=col>收盘价(元)</th><th scope=col>成交量(股)</th><th scope=col>成交金额(元)</th><th scope=col>涨跌(元)</th><th scope=col>涨跌幅(%)</th><th scope=col>均价(元)</th><th scope=col>换手率(%)</th><th scope=col>A股流通市值(元)</th><th scope=col>总市值(元)</th><th scope=col>A股流通股本(股)</th><th scope=col>市盈率</th></tr></thead>\n",
       "<tbody>\n",
       "\t<tr><th scope=row>2016-01-04</th><td>600000.SH  </td><td>浦发银行   </td><td>16.1356    </td><td>16.1444    </td><td>16.1444    </td><td>15.4997    </td><td>15.7205    </td><td>42240610   </td><td>754425783  </td><td>-0.4151    </td><td>-2.5725    </td><td>17.8602    </td><td>0.2264     </td><td>3.32032e+11</td><td>3.32032e+11</td><td>18653471415</td><td>6.5614     </td></tr>\n",
       "\t<tr><th scope=row>2016-01-05</th><td>600000.SH  </td><td>浦发银行   </td><td>15.7205    </td><td>15.4644    </td><td>15.9501    </td><td>15.3672    </td><td>15.8618    </td><td>58054793   </td><td>1034181474 </td><td> 0.1413    </td><td> 0.8989    </td><td>17.8139    </td><td>0.3112     </td><td>3.35016e+11</td><td>3.35016e+11</td><td>18653471415</td><td>6.6204     </td></tr>\n",
       "\t<tr><th scope=row>2016-01-06</th><td>600000.SH  </td><td>浦发银行   </td><td>15.8618    </td><td>15.8088    </td><td>16.0208    </td><td>15.6234    </td><td>15.9855    </td><td>46772653   </td><td>838667398  </td><td> 0.1236    </td><td> 0.7795    </td><td>17.9307    </td><td>0.2507     </td><td>3.37628e+11</td><td>3.37628e+11</td><td>18653471415</td><td>6.6720     </td></tr>\n",
       "\t<tr><th scope=row>2016-01-07</th><td>600000.SH  </td><td>浦发银行   </td><td>15.9855    </td><td>15.7205    </td><td>15.8088    </td><td>15.3672    </td><td>15.4644    </td><td>11350479   </td><td>199502702  </td><td>-0.5211    </td><td>-3.2597    </td><td>17.5766    </td><td>0.0608     </td><td>3.26622e+11</td><td>3.26622e+11</td><td>18653471415</td><td>6.4545     </td></tr>\n",
       "\t<tr><th scope=row>2016-01-08</th><td>600000.SH  </td><td>浦发银行   </td><td>15.4644    </td><td>15.6675    </td><td>15.7912    </td><td>14.9345    </td><td>15.4467    </td><td>71918296   </td><td>1262105060 </td><td>-0.0177    </td><td>-0.1142    </td><td>17.5492    </td><td>0.3855     </td><td>3.26249e+11</td><td>3.26249e+11</td><td>18653471415</td><td>6.4471     </td></tr>\n",
       "\t<tr><th scope=row>2016-01-11</th><td>600000.SH  </td><td>浦发银行   </td><td>15.4467    </td><td>15.1994    </td><td>15.4114    </td><td>14.9786    </td><td>15.0581    </td><td>90177135   </td><td>1550155933 </td><td>-0.3886    </td><td>-2.5157    </td><td>17.1901    </td><td>0.4834     </td><td>3.18042e+11</td><td>3.18042e+11</td><td>18653471415</td><td>6.2849     </td></tr>\n",
       "\t<tr><th scope=row>2016-01-12</th><td>600000.SH  </td><td>浦发银行   </td><td>15.0581    </td><td>15.1641    </td><td>15.4732    </td><td>15.0846    </td><td>15.4114    </td><td>55374454   </td><td>964061502  </td><td> 0.3533    </td><td> 2.3460    </td><td>17.4099    </td><td>0.2969     </td><td>3.25503e+11</td><td>3.25503e+11</td><td>18653471415</td><td>6.4324     </td></tr>\n",
       "\t<tr><th scope=row>2016-01-13</th><td>600000.SH  </td><td>浦发银行   </td><td>15.4114    </td><td>15.5174    </td><td>15.8088    </td><td>15.3231    </td><td>15.3584    </td><td>47869312   </td><td>843717365  </td><td>-0.0530    </td><td>-0.3438    </td><td>17.6254    </td><td>0.2566     </td><td>3.24384e+11</td><td>3.24384e+11</td><td>18653471415</td><td>6.4102     </td></tr>\n",
       "\t<tr><th scope=row>2016-01-14</th><td>600000.SH  </td><td>浦发银行   </td><td>15.3584    </td><td>15.0140    </td><td>15.8883    </td><td>14.9168    </td><td>15.8265    </td><td>54838833   </td><td>966117848  </td><td> 0.4681    </td><td> 3.0477    </td><td>17.6174    </td><td>0.2940     </td><td>3.34270e+11</td><td>3.34270e+11</td><td>18653471415</td><td>6.6056     </td></tr>\n",
       "\t<tr><th scope=row>2016-01-15</th><td>600000.SH  </td><td>浦发银行   </td><td>15.8265    </td><td>15.7205    </td><td>16.0296    </td><td>15.4732    </td><td>15.5262    </td><td>46723139   </td><td>836146426  </td><td>-0.3003    </td><td>-1.8973    </td><td>17.8958    </td><td>0.2505     </td><td>3.27928e+11</td><td>3.27928e+11</td><td>18653471415</td><td>6.4803     </td></tr>\n",
       "\t<tr><th scope=row>2016-01-18</th><td>600000.SH  </td><td>浦发银行   </td><td>15.5262    </td><td>15.3937    </td><td>15.8883    </td><td>15.2966    </td><td>15.6145    </td><td>32729006   </td><td>583291559  </td><td> 0.0883    </td><td> 0.5688    </td><td>17.8219    </td><td>0.1755     </td><td>3.29793e+11</td><td>3.29793e+11</td><td>18653471415</td><td>6.5171     </td></tr>\n",
       "\t<tr><th scope=row>2016-01-19</th><td>600000.SH  </td><td>浦发银行   </td><td>15.6145    </td><td>15.7029    </td><td>15.7912    </td><td>15.4556    </td><td>15.6940    </td><td>29807159   </td><td>527753175  </td><td> 0.0795    </td><td> 0.5090    </td><td>17.7056    </td><td>0.1598     </td><td>3.31472e+11</td><td>3.31472e+11</td><td>18653471415</td><td>6.5503     </td></tr>\n",
       "\t<tr><th scope=row>2016-01-20</th><td>600000.SH  </td><td>浦发银行   </td><td>15.6940    </td><td>15.5527    </td><td>15.6322    </td><td>15.0846    </td><td>15.2348    </td><td>35968636   </td><td>623546924  </td><td>-0.4593    </td><td>-2.9263    </td><td>17.3359    </td><td>0.1928     </td><td>3.21772e+11</td><td>3.21772e+11</td><td>18653471415</td><td>6.3586     </td></tr>\n",
       "\t<tr><th scope=row>2016-01-21</th><td>600000.SH  </td><td>浦发银行   </td><td>15.2348    </td><td>15.2083    </td><td>15.4202    </td><td>14.5724    </td><td>14.6430    </td><td>34197115   </td><td>582845476  </td><td>-0.5917    </td><td>-3.8841    </td><td>17.0437    </td><td>0.1833     </td><td>3.09275e+11</td><td>3.09275e+11</td><td>18653471415</td><td>6.1117     </td></tr>\n",
       "\t<tr><th scope=row>2016-01-22</th><td>600000.SH  </td><td>浦发银行   </td><td>14.6430    </td><td>14.8727    </td><td>15.1111    </td><td>14.5636    </td><td>15.0316    </td><td>42007318   </td><td>708179241  </td><td> 0.3886    </td><td> 2.6538    </td><td>16.8585    </td><td>0.2252     </td><td>3.17482e+11</td><td>3.17482e+11</td><td>18653471415</td><td>6.2739     </td></tr>\n",
       "\t<tr><th scope=row>2016-01-25</th><td>600000.SH  </td><td>浦发银行   </td><td>15.0316    </td><td>15.0140    </td><td>15.1641    </td><td>14.7667    </td><td>15.0405    </td><td>23558971   </td><td>400445071  </td><td> 0.0088    </td><td> 0.0588    </td><td>16.9976    </td><td>0.1263     </td><td>3.17669e+11</td><td>3.17669e+11</td><td>18653471415</td><td>6.2775     </td></tr>\n",
       "\t<tr><th scope=row>2016-01-26</th><td>600000.SH  </td><td>浦发银行   </td><td>15.0405    </td><td>14.9786    </td><td>15.1376    </td><td>14.4841    </td><td>14.7137    </td><td>38279766   </td><td>643611762  </td><td>-0.3268    </td><td>-2.1726    </td><td>16.8134    </td><td>0.2052     </td><td>3.10767e+11</td><td>3.10767e+11</td><td>18653471415</td><td>6.1412     </td></tr>\n",
       "\t<tr><th scope=row>2016-01-27</th><td>600000.SH  </td><td>浦发银行   </td><td>14.7137    </td><td>14.7932    </td><td>14.9963    </td><td>14.5812    </td><td>14.7314    </td><td>44291307   </td><td>742640743  </td><td> 0.0177    </td><td> 0.1200    </td><td>16.7672    </td><td>0.2374     </td><td>3.11140e+11</td><td>3.11140e+11</td><td>18653471415</td><td>6.1485     </td></tr>\n",
       "\t<tr><th scope=row>2016-01-28</th><td>600000.SH  </td><td>浦发银行   </td><td>14.7314    </td><td>14.8020    </td><td>14.8550    </td><td>14.0248    </td><td>14.6430    </td><td>38902180   </td><td>643984171  </td><td>-0.0883    </td><td>-0.5995    </td><td>16.5539    </td><td>0.2086     </td><td>3.09275e+11</td><td>3.09275e+11</td><td>18653471415</td><td>6.1117     </td></tr>\n",
       "\t<tr><th scope=row>2016-01-29</th><td>600000.SH  </td><td>浦发银行   </td><td>14.6430    </td><td>14.5901    </td><td>15.0581    </td><td>14.4929    </td><td>14.9257    </td><td>47429000   </td><td>799493381  </td><td> 0.2826    </td><td> 1.9300    </td><td>16.8566    </td><td>0.2543     </td><td>3.15244e+11</td><td>3.15244e+11</td><td>18653471415</td><td>6.2296     </td></tr>\n",
       "\t<tr><th scope=row>2016-02-01</th><td>600000.SH  </td><td>浦发银行   </td><td>14.9257    </td><td>15.0051    </td><td>15.0140    </td><td>14.4929    </td><td>14.5724    </td><td>29139596   </td><td>485275132  </td><td>-0.3533    </td><td>-2.3669    </td><td>16.6535    </td><td>0.1562     </td><td>3.07782e+11</td><td>3.07782e+11</td><td>18653471415</td><td>6.0822     </td></tr>\n",
       "\t<tr><th scope=row>2016-02-02</th><td>600000.SH  </td><td>浦发银行   </td><td>14.5724    </td><td>14.5724    </td><td>14.9610    </td><td>14.5371    </td><td>14.8020    </td><td>25380981   </td><td>425396889  </td><td> 0.2296    </td><td> 1.5758    </td><td>16.7605    </td><td>0.1361     </td><td>3.12632e+11</td><td>3.12632e+11</td><td>18653471415</td><td>6.1780     </td></tr>\n",
       "\t<tr><th scope=row>2016-02-03</th><td>600000.SH  </td><td>浦发银行   </td><td>14.8020    </td><td>14.6607    </td><td>14.7137    </td><td>14.5282    </td><td>14.6695    </td><td>27779183   </td><td>459255616  </td><td>-0.1325    </td><td>-0.8950    </td><td>16.5324    </td><td>0.1489     </td><td>3.09834e+11</td><td>3.09834e+11</td><td>18653471415</td><td>6.1227     </td></tr>\n",
       "\t<tr><th scope=row>2016-02-04</th><td>600000.SH  </td><td>浦发银行   </td><td>14.6695    </td><td>14.8727    </td><td>15.2966    </td><td>14.6872    </td><td>15.2789    </td><td>47162860   </td><td>799283799  </td><td> 0.6094    </td><td> 4.1541    </td><td>16.9473    </td><td>0.2528     </td><td>3.22705e+11</td><td>3.22705e+11</td><td>18653471415</td><td>6.3771     </td></tr>\n",
       "\t<tr><th scope=row>2016-02-05</th><td>600000.SH  </td><td>浦发银行   </td><td>15.2789    </td><td>15.2259    </td><td>16.2416    </td><td>15.1465    </td><td>16.2328    </td><td>78413454   </td><td>1401156041 </td><td> 0.9538    </td><td> 6.2428    </td><td>17.8688    </td><td>0.4204     </td><td>3.42851e+11</td><td>3.42851e+11</td><td>18653471415</td><td>6.7752     </td></tr>\n",
       "\t<tr><th scope=row>2016-02-15</th><td>600000.SH  </td><td>浦发银行   </td><td>16.2328    </td><td>15.8795    </td><td>16.3211    </td><td>15.7205    </td><td>16.2946    </td><td>67296317   </td><td>1221398339 </td><td> 0.0618    </td><td> 0.3808    </td><td>18.1496    </td><td>0.3608     </td><td>3.44157e+11</td><td>3.44157e+11</td><td>18653471415</td><td>6.8010     </td></tr>\n",
       "\t<tr><th scope=row>2016-03-11</th><td>600000.SH  </td><td>浦发银行   </td><td>16.2946    </td><td>15.4644    </td><td>15.4821    </td><td>14.6695    </td><td>14.9875    </td><td>98240322   </td><td>1657158636 </td><td>-1.3071    </td><td>-8.0217    </td><td>16.8684    </td><td>0.5267     </td><td>3.16549e+11</td><td>3.16549e+11</td><td>18653471415</td><td>6.2554     </td></tr>\n",
       "\t<tr><th scope=row>2016-03-14</th><td>600000.SH  </td><td>浦发银行   </td><td>14.9875    </td><td>14.9080    </td><td>15.4291    </td><td>14.8550    </td><td>14.8903    </td><td>56922239   </td><td>973317374  </td><td>-0.0971    </td><td>-0.6482    </td><td>17.0991    </td><td>0.3052     </td><td>3.14498e+11</td><td>3.14498e+11</td><td>18653471415</td><td>6.2149     </td></tr>\n",
       "\t<tr><th scope=row>2016-03-15</th><td>600000.SH  </td><td>浦发银行   </td><td>14.8903    </td><td>14.9698    </td><td>15.1818    </td><td>14.8462    </td><td>15.0316    </td><td>37540932   </td><td>638223050  </td><td> 0.1413    </td><td> 0.9490    </td><td>17.0007    </td><td>0.2013     </td><td>3.17482e+11</td><td>3.17482e+11</td><td>18653471415</td><td>6.2739     </td></tr>\n",
       "\t<tr><th scope=row>2016-03-16</th><td>600000.SH  </td><td>浦发银行   </td><td>15.0316    </td><td>14.9433    </td><td>15.9590    </td><td>14.9345    </td><td>15.9236    </td><td>108404378  </td><td>1924212601 </td><td> 0.8920    </td><td> 5.9342    </td><td>17.7503    </td><td>0.5811     </td><td>3.36322e+11</td><td>3.36322e+11</td><td>18653471415</td><td>6.6462     </td></tr>\n",
       "\t<tr><th scope=row>...</th><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td></tr>\n",
       "\t<tr><th scope=row>2017-03-24</th><td>600000.SH  </td><td>浦发银行   </td><td>15.88      </td><td>15.85      </td><td>16.00      </td><td>15.83      </td><td>15.96      </td><td>19902006   </td><td>316984958  </td><td> 0.08      </td><td> 0.5038    </td><td>15.9273    </td><td>0.0921     </td><td>3.45028e+11</td><td>3.45028e+11</td><td>21618279922</td><td>6.4978     </td></tr>\n",
       "\t<tr><th scope=row>2017-03-27</th><td>600000.SH  </td><td>浦发银行   </td><td>15.96      </td><td>15.97      </td><td>16.13      </td><td>15.90      </td><td>16.04      </td><td>18997369   </td><td>304990151  </td><td> 0.08      </td><td> 0.5013    </td><td>16.0543    </td><td>0.0879     </td><td>3.46757e+11</td><td>3.46757e+11</td><td>21618279922</td><td>6.5304     </td></tr>\n",
       "\t<tr><th scope=row>2017-03-28</th><td>600000.SH  </td><td>浦发银行   </td><td>16.04      </td><td>16.11      </td><td>16.13      </td><td>15.97      </td><td>16.01      </td><td>13212969   </td><td>211750766  </td><td>-0.03      </td><td>-0.1870    </td><td>16.026     </td><td>0.0611     </td><td>3.46109e+11</td><td>3.46109e+11</td><td>21618279922</td><td>6.5182     </td></tr>\n",
       "\t<tr><th scope=row>2017-03-29</th><td>600000.SH  </td><td>浦发银行   </td><td>16.01      </td><td>16.01      </td><td>16.11      </td><td>15.80      </td><td>15.87      </td><td>23446792   </td><td>372794465  </td><td>-0.14      </td><td>-0.8745    </td><td>15.8996    </td><td>0.1085     </td><td>3.43082e+11</td><td>3.43082e+11</td><td>21618279922</td><td>6.4612     </td></tr>\n",
       "\t<tr><th scope=row>2017-03-30</th><td>600000.SH  </td><td>浦发银行   </td><td>15.87      </td><td>15.88      </td><td>15.90      </td><td>15.72      </td><td>15.81      </td><td>23645144   </td><td>373665115  </td><td>-0.06      </td><td>-0.3781    </td><td>15.803     </td><td>0.1094     </td><td>3.41785e+11</td><td>3.41785e+11</td><td>21618279922</td><td>6.4368     </td></tr>\n",
       "\t<tr><th scope=row>2017-03-31</th><td>600000.SH  </td><td>浦发银行   </td><td>15.81      </td><td>15.78      </td><td>16.05      </td><td>15.77      </td><td>16.01      </td><td>24187120   </td><td>385793421  </td><td> 0.20      </td><td> 1.2650    </td><td>15.9504    </td><td>0.1119     </td><td>3.46109e+11</td><td>3.46109e+11</td><td>21618279922</td><td>6.5182     </td></tr>\n",
       "\t<tr><th scope=row>2017-04-05</th><td>600000.SH  </td><td>浦发银行   </td><td>16.01      </td><td>16.05      </td><td>16.20      </td><td>15.89      </td><td>16.16      </td><td>31036271   </td><td>499121565  </td><td> 0.15      </td><td> 0.9369    </td><td>16.0819    </td><td>0.1436     </td><td>3.49351e+11</td><td>3.49351e+11</td><td>21618279922</td><td>6.5792     </td></tr>\n",
       "\t<tr><th scope=row>2017-04-06</th><td>600000.SH  </td><td>浦发银行   </td><td>16.16      </td><td>16.09      </td><td>16.18      </td><td>16.03      </td><td>16.10      </td><td>22335442   </td><td>359361840  </td><td>-0.06      </td><td>-0.3713    </td><td>16.0893    </td><td>0.1033     </td><td>3.48054e+11</td><td>3.48054e+11</td><td>21618279922</td><td>6.5548     </td></tr>\n",
       "\t<tr><th scope=row>2017-04-07</th><td>600000.SH  </td><td>浦发银行   </td><td>16.10      </td><td>16.06      </td><td>16.16      </td><td>16.02      </td><td>16.10      </td><td>20126948   </td><td>323821647  </td><td> 0.00      </td><td> 0.0000    </td><td>16.089     </td><td>0.0931     </td><td>3.48054e+11</td><td>3.48054e+11</td><td>21618279922</td><td>6.5548     </td></tr>\n",
       "\t<tr><th scope=row>2017-04-10</th><td>600000.SH  </td><td>浦发银行   </td><td>16.10      </td><td>16.12      </td><td>16.12      </td><td>15.94      </td><td>15.97      </td><td>16154024   </td><td>258662668  </td><td>-0.13      </td><td>-0.8075    </td><td>16.0123    </td><td>0.0747     </td><td>3.45244e+11</td><td>3.45244e+11</td><td>21618279922</td><td>6.5019     </td></tr>\n",
       "\t<tr><th scope=row>2017-04-11</th><td>600000.SH  </td><td>浦发银行   </td><td>15.97      </td><td>15.97      </td><td>15.99      </td><td>15.81      </td><td>15.89      </td><td>18611375   </td><td>295381671  </td><td>-0.08      </td><td>-0.5009    </td><td>15.871     </td><td>0.0861     </td><td>3.43514e+11</td><td>3.43514e+11</td><td>21618279922</td><td>6.4693     </td></tr>\n",
       "\t<tr><th scope=row>2017-04-12</th><td>600000.SH  </td><td>浦发银行   </td><td>15.89      </td><td>15.88      </td><td>15.96      </td><td>15.75      </td><td>15.89      </td><td>22210541   </td><td>352357729  </td><td> 0.00      </td><td> 0.0000    </td><td>15.8644    </td><td>0.1027     </td><td>3.43514e+11</td><td>3.43514e+11</td><td>21618279922</td><td>6.4693     </td></tr>\n",
       "\t<tr><th scope=row>2017-04-13</th><td>600000.SH  </td><td>浦发银行   </td><td>15.89      </td><td>15.88      </td><td>15.89      </td><td>15.73      </td><td>15.75      </td><td>23426650   </td><td>369388222  </td><td>-0.14      </td><td>-0.8811    </td><td>15.7679    </td><td>0.1084     </td><td>3.40488e+11</td><td>3.40488e+11</td><td>21618279922</td><td>6.4123     </td></tr>\n",
       "\t<tr><th scope=row>2017-04-14</th><td>600000.SH  </td><td>浦发银行   </td><td>15.75      </td><td>15.76      </td><td>15.78      </td><td>15.42      </td><td>15.51      </td><td>40156553   </td><td>625510632  </td><td>-0.24      </td><td>-1.5238    </td><td>15.5768    </td><td>0.1858     </td><td>3.35300e+11</td><td>3.35300e+11</td><td>21618279922</td><td>6.3146     </td></tr>\n",
       "\t<tr><th scope=row>2017-04-17</th><td>600000.SH  </td><td>浦发银行   </td><td>15.51      </td><td>15.53      </td><td>15.60      </td><td>15.30      </td><td>15.56      </td><td>36739448   </td><td>566536789  </td><td> 0.05      </td><td> 0.3224    </td><td>15.4204    </td><td>0.1699     </td><td>3.36380e+11</td><td>3.36380e+11</td><td>21618279922</td><td>6.3350     </td></tr>\n",
       "\t<tr><th scope=row>2017-04-18</th><td>600000.SH  </td><td>浦发银行   </td><td>15.56      </td><td>15.50      </td><td>15.52      </td><td>15.30      </td><td>15.30      </td><td>22889980   </td><td>351624622  </td><td>-0.26      </td><td>-1.6710    </td><td>15.3615    </td><td>0.1059     </td><td>3.30760e+11</td><td>3.30760e+11</td><td>21618279922</td><td>6.2291     </td></tr>\n",
       "\t<tr><th scope=row>2017-04-19</th><td>600000.SH  </td><td>浦发银行   </td><td>15.30      </td><td>15.25      </td><td>15.27      </td><td>15.11      </td><td>15.11      </td><td>24455407   </td><td>371021507  </td><td>-0.19      </td><td>-1.2418    </td><td>15.1713    </td><td>0.1131     </td><td>3.26652e+11</td><td>3.26652e+11</td><td>21618279922</td><td>6.1518     </td></tr>\n",
       "\t<tr><th scope=row>2017-04-20</th><td>600000.SH  </td><td>浦发银行   </td><td>15.11      </td><td>15.12      </td><td>15.14      </td><td>14.90      </td><td>14.91      </td><td>41061406   </td><td>614436383  </td><td>-0.20      </td><td>-1.3236    </td><td>14.9638    </td><td>0.1899     </td><td>3.22329e+11</td><td>3.22329e+11</td><td>21618279922</td><td>6.0703     </td></tr>\n",
       "\t<tr><th scope=row>2017-04-21</th><td>600000.SH  </td><td>浦发银行   </td><td>14.91      </td><td>14.92      </td><td>15.07      </td><td>14.85      </td><td>15.05      </td><td>22688358   </td><td>340453104  </td><td> 0.14      </td><td> 0.9390    </td><td>15.0056    </td><td>0.1049     </td><td>3.25355e+11</td><td>3.25355e+11</td><td>21618279922</td><td>6.1273     </td></tr>\n",
       "\t<tr><th scope=row>2017-04-24</th><td>600000.SH  </td><td>浦发银行   </td><td>15.05      </td><td>15.05      </td><td>15.11      </td><td>14.91      </td><td>15.00      </td><td>17627803   </td><td>264649933  </td><td>-0.05      </td><td>-0.3322    </td><td>15.0132    </td><td>0.0815     </td><td>3.24274e+11</td><td>3.24274e+11</td><td>21618279922</td><td>6.1070     </td></tr>\n",
       "\t<tr><th scope=row>2017-04-25</th><td>600000.SH  </td><td>浦发银行   </td><td>15.00      </td><td>15.02      </td><td>15.10      </td><td>14.99      </td><td>15.05      </td><td>12975919   </td><td>195296862  </td><td> 0.05      </td><td> 0.3333    </td><td>15.0507    </td><td>0.0600     </td><td>3.25355e+11</td><td>3.25355e+11</td><td>21618279922</td><td>6.1273     </td></tr>\n",
       "\t<tr><th scope=row>2017-04-26</th><td>600000.SH  </td><td>浦发银行   </td><td>15.05      </td><td>15.06      </td><td>15.11      </td><td>15.00      </td><td>15.05      </td><td>14939871   </td><td>225022668  </td><td> 0.00      </td><td> 0.0000    </td><td>15.0619    </td><td>0.0691     </td><td>3.25355e+11</td><td>3.25355e+11</td><td>21618279922</td><td>6.1273     </td></tr>\n",
       "\t<tr><th scope=row>2017-04-27</th><td>600000.SH  </td><td>浦发银行   </td><td>15.05      </td><td>15.05      </td><td>15.25      </td><td>15.03      </td><td>15.21      </td><td>22887645   </td><td>345791526  </td><td> 0.16      </td><td> 1.0631    </td><td>15.1082    </td><td>0.1059     </td><td>3.28814e+11</td><td>3.28814e+11</td><td>21618279922</td><td>6.1925     </td></tr>\n",
       "\t<tr><th scope=row>2017-04-28</th><td>600000.SH  </td><td>浦发银行   </td><td>15.21      </td><td>15.15      </td><td>15.22      </td><td>15.08      </td><td>15.21      </td><td>15718509   </td><td>238419161  </td><td> 0.00      </td><td> 0.0000    </td><td>15.1681    </td><td>0.0727     </td><td>3.28814e+11</td><td>3.28814e+11</td><td>21618279922</td><td>6.1925     </td></tr>\n",
       "\t<tr><th scope=row>2017-05-02</th><td>600000.SH  </td><td>浦发银行   </td><td>15.21      </td><td>15.21      </td><td>15.22      </td><td>15.13      </td><td>15.16      </td><td>12607509   </td><td>191225527  </td><td>-0.05      </td><td>-0.3287    </td><td>15.1676    </td><td>0.0583     </td><td>3.27733e+11</td><td>3.27733e+11</td><td>21618279922</td><td>6.1721     </td></tr>\n",
       "\t<tr><th scope=row>2017-05-03</th><td>600000.SH  </td><td>浦发银行   </td><td>15.16      </td><td>15.16      </td><td>15.16      </td><td>15.05      </td><td>15.08      </td><td>14247943   </td><td>215130847  </td><td>-0.08      </td><td>-0.5277    </td><td>15.0991    </td><td>0.0659     </td><td>3.26004e+11</td><td>3.26004e+11</td><td>21618279922</td><td>6.1395     </td></tr>\n",
       "\t<tr><th scope=row>2017-05-04</th><td>600000.SH  </td><td>浦发银行   </td><td>15.08      </td><td>15.07      </td><td>15.07      </td><td>14.90      </td><td>14.98      </td><td>19477788   </td><td>291839737  </td><td>-0.10      </td><td>-0.6631    </td><td>14.9832    </td><td>0.0901     </td><td>3.23842e+11</td><td>3.23842e+11</td><td>21618279922</td><td>6.0988     </td></tr>\n",
       "\t<tr><th scope=row>2017-05-05</th><td>600000.SH  </td><td>浦发银行   </td><td>14.98      </td><td>14.95      </td><td>14.98      </td><td>14.52      </td><td>14.92      </td><td>40194577   </td><td>592160198  </td><td>-0.06      </td><td>-0.4005    </td><td>14.7323    </td><td>0.1859     </td><td>3.22545e+11</td><td>3.22545e+11</td><td>21618279922</td><td>6.0744     </td></tr>\n",
       "\t<tr><th scope=row>2017-05-08</th><td>600000.SH  </td><td>浦发银行   </td><td>14.92      </td><td>14.78      </td><td>14.90      </td><td>14.51      </td><td>14.86      </td><td>43568576   </td><td>638781010  </td><td>-0.06      </td><td>-0.4021    </td><td>14.6615    </td><td>0.2015     </td><td>3.21248e+11</td><td>3.21248e+11</td><td>21618279922</td><td>6.0500     </td></tr>\n",
       "\t<tr><th scope=row>2017-05-09</th><td>600000.SH  </td><td>浦发银行   </td><td>14.86      </td><td>14.69      </td><td>14.84      </td><td>14.66      </td><td>14.76      </td><td>19225492   </td><td>283864640  </td><td>-0.10      </td><td>-0.6729    </td><td>14.765     </td><td>0.0889     </td><td>3.19086e+11</td><td>3.19086e+11</td><td>21618279922</td><td>6.0093     </td></tr>\n",
       "</tbody>\n",
       "</table>\n"
      ],
      "text/latex": [
       "\\begin{tabular}{r|lllllllllllllllll}\n",
       "  & ﻿代码 & 简称 & 前收盘价(元) & 开盘价(元) & 最高价(元) & 最低价(元) & 收盘价(元) & 成交量(股) & 成交金额(元) & 涨跌(元) & 涨跌幅(\\%) & 均价(元) & 换手率(\\%) & A股流通市值(元) & 总市值(元) & A股流通股本(股) & 市盈率\\\\\n",
       "\\hline\n",
       "\t2016-01-04 & 600000.SH   & 浦发银行    & 16.1356     & 16.1444     & 16.1444     & 15.4997     & 15.7205     & 42240610    & 754425783   & -0.4151     & -2.5725     & 17.8602     & 0.2264      & 3.32032e+11 & 3.32032e+11 & 18653471415 & 6.5614     \\\\\n",
       "\t2016-01-05 & 600000.SH   & 浦发银行    & 15.7205     & 15.4644     & 15.9501     & 15.3672     & 15.8618     & 58054793    & 1034181474  &  0.1413     &  0.8989     & 17.8139     & 0.3112      & 3.35016e+11 & 3.35016e+11 & 18653471415 & 6.6204     \\\\\n",
       "\t2016-01-06 & 600000.SH   & 浦发银行    & 15.8618     & 15.8088     & 16.0208     & 15.6234     & 15.9855     & 46772653    & 838667398   &  0.1236     &  0.7795     & 17.9307     & 0.2507      & 3.37628e+11 & 3.37628e+11 & 18653471415 & 6.6720     \\\\\n",
       "\t2016-01-07 & 600000.SH   & 浦发银行    & 15.9855     & 15.7205     & 15.8088     & 15.3672     & 15.4644     & 11350479    & 199502702   & -0.5211     & -3.2597     & 17.5766     & 0.0608      & 3.26622e+11 & 3.26622e+11 & 18653471415 & 6.4545     \\\\\n",
       "\t2016-01-08 & 600000.SH   & 浦发银行    & 15.4644     & 15.6675     & 15.7912     & 14.9345     & 15.4467     & 71918296    & 1262105060  & -0.0177     & -0.1142     & 17.5492     & 0.3855      & 3.26249e+11 & 3.26249e+11 & 18653471415 & 6.4471     \\\\\n",
       "\t2016-01-11 & 600000.SH   & 浦发银行    & 15.4467     & 15.1994     & 15.4114     & 14.9786     & 15.0581     & 90177135    & 1550155933  & -0.3886     & -2.5157     & 17.1901     & 0.4834      & 3.18042e+11 & 3.18042e+11 & 18653471415 & 6.2849     \\\\\n",
       "\t2016-01-12 & 600000.SH   & 浦发银行    & 15.0581     & 15.1641     & 15.4732     & 15.0846     & 15.4114     & 55374454    & 964061502   &  0.3533     &  2.3460     & 17.4099     & 0.2969      & 3.25503e+11 & 3.25503e+11 & 18653471415 & 6.4324     \\\\\n",
       "\t2016-01-13 & 600000.SH   & 浦发银行    & 15.4114     & 15.5174     & 15.8088     & 15.3231     & 15.3584     & 47869312    & 843717365   & -0.0530     & -0.3438     & 17.6254     & 0.2566      & 3.24384e+11 & 3.24384e+11 & 18653471415 & 6.4102     \\\\\n",
       "\t2016-01-14 & 600000.SH   & 浦发银行    & 15.3584     & 15.0140     & 15.8883     & 14.9168     & 15.8265     & 54838833    & 966117848   &  0.4681     &  3.0477     & 17.6174     & 0.2940      & 3.34270e+11 & 3.34270e+11 & 18653471415 & 6.6056     \\\\\n",
       "\t2016-01-15 & 600000.SH   & 浦发银行    & 15.8265     & 15.7205     & 16.0296     & 15.4732     & 15.5262     & 46723139    & 836146426   & -0.3003     & -1.8973     & 17.8958     & 0.2505      & 3.27928e+11 & 3.27928e+11 & 18653471415 & 6.4803     \\\\\n",
       "\t2016-01-18 & 600000.SH   & 浦发银行    & 15.5262     & 15.3937     & 15.8883     & 15.2966     & 15.6145     & 32729006    & 583291559   &  0.0883     &  0.5688     & 17.8219     & 0.1755      & 3.29793e+11 & 3.29793e+11 & 18653471415 & 6.5171     \\\\\n",
       "\t2016-01-19 & 600000.SH   & 浦发银行    & 15.6145     & 15.7029     & 15.7912     & 15.4556     & 15.6940     & 29807159    & 527753175   &  0.0795     &  0.5090     & 17.7056     & 0.1598      & 3.31472e+11 & 3.31472e+11 & 18653471415 & 6.5503     \\\\\n",
       "\t2016-01-20 & 600000.SH   & 浦发银行    & 15.6940     & 15.5527     & 15.6322     & 15.0846     & 15.2348     & 35968636    & 623546924   & -0.4593     & -2.9263     & 17.3359     & 0.1928      & 3.21772e+11 & 3.21772e+11 & 18653471415 & 6.3586     \\\\\n",
       "\t2016-01-21 & 600000.SH   & 浦发银行    & 15.2348     & 15.2083     & 15.4202     & 14.5724     & 14.6430     & 34197115    & 582845476   & -0.5917     & -3.8841     & 17.0437     & 0.1833      & 3.09275e+11 & 3.09275e+11 & 18653471415 & 6.1117     \\\\\n",
       "\t2016-01-22 & 600000.SH   & 浦发银行    & 14.6430     & 14.8727     & 15.1111     & 14.5636     & 15.0316     & 42007318    & 708179241   &  0.3886     &  2.6538     & 16.8585     & 0.2252      & 3.17482e+11 & 3.17482e+11 & 18653471415 & 6.2739     \\\\\n",
       "\t2016-01-25 & 600000.SH   & 浦发银行    & 15.0316     & 15.0140     & 15.1641     & 14.7667     & 15.0405     & 23558971    & 400445071   &  0.0088     &  0.0588     & 16.9976     & 0.1263      & 3.17669e+11 & 3.17669e+11 & 18653471415 & 6.2775     \\\\\n",
       "\t2016-01-26 & 600000.SH   & 浦发银行    & 15.0405     & 14.9786     & 15.1376     & 14.4841     & 14.7137     & 38279766    & 643611762   & -0.3268     & -2.1726     & 16.8134     & 0.2052      & 3.10767e+11 & 3.10767e+11 & 18653471415 & 6.1412     \\\\\n",
       "\t2016-01-27 & 600000.SH   & 浦发银行    & 14.7137     & 14.7932     & 14.9963     & 14.5812     & 14.7314     & 44291307    & 742640743   &  0.0177     &  0.1200     & 16.7672     & 0.2374      & 3.11140e+11 & 3.11140e+11 & 18653471415 & 6.1485     \\\\\n",
       "\t2016-01-28 & 600000.SH   & 浦发银行    & 14.7314     & 14.8020     & 14.8550     & 14.0248     & 14.6430     & 38902180    & 643984171   & -0.0883     & -0.5995     & 16.5539     & 0.2086      & 3.09275e+11 & 3.09275e+11 & 18653471415 & 6.1117     \\\\\n",
       "\t2016-01-29 & 600000.SH   & 浦发银行    & 14.6430     & 14.5901     & 15.0581     & 14.4929     & 14.9257     & 47429000    & 799493381   &  0.2826     &  1.9300     & 16.8566     & 0.2543      & 3.15244e+11 & 3.15244e+11 & 18653471415 & 6.2296     \\\\\n",
       "\t2016-02-01 & 600000.SH   & 浦发银行    & 14.9257     & 15.0051     & 15.0140     & 14.4929     & 14.5724     & 29139596    & 485275132   & -0.3533     & -2.3669     & 16.6535     & 0.1562      & 3.07782e+11 & 3.07782e+11 & 18653471415 & 6.0822     \\\\\n",
       "\t2016-02-02 & 600000.SH   & 浦发银行    & 14.5724     & 14.5724     & 14.9610     & 14.5371     & 14.8020     & 25380981    & 425396889   &  0.2296     &  1.5758     & 16.7605     & 0.1361      & 3.12632e+11 & 3.12632e+11 & 18653471415 & 6.1780     \\\\\n",
       "\t2016-02-03 & 600000.SH   & 浦发银行    & 14.8020     & 14.6607     & 14.7137     & 14.5282     & 14.6695     & 27779183    & 459255616   & -0.1325     & -0.8950     & 16.5324     & 0.1489      & 3.09834e+11 & 3.09834e+11 & 18653471415 & 6.1227     \\\\\n",
       "\t2016-02-04 & 600000.SH   & 浦发银行    & 14.6695     & 14.8727     & 15.2966     & 14.6872     & 15.2789     & 47162860    & 799283799   &  0.6094     &  4.1541     & 16.9473     & 0.2528      & 3.22705e+11 & 3.22705e+11 & 18653471415 & 6.3771     \\\\\n",
       "\t2016-02-05 & 600000.SH   & 浦发银行    & 15.2789     & 15.2259     & 16.2416     & 15.1465     & 16.2328     & 78413454    & 1401156041  &  0.9538     &  6.2428     & 17.8688     & 0.4204      & 3.42851e+11 & 3.42851e+11 & 18653471415 & 6.7752     \\\\\n",
       "\t2016-02-15 & 600000.SH   & 浦发银行    & 16.2328     & 15.8795     & 16.3211     & 15.7205     & 16.2946     & 67296317    & 1221398339  &  0.0618     &  0.3808     & 18.1496     & 0.3608      & 3.44157e+11 & 3.44157e+11 & 18653471415 & 6.8010     \\\\\n",
       "\t2016-03-11 & 600000.SH   & 浦发银行    & 16.2946     & 15.4644     & 15.4821     & 14.6695     & 14.9875     & 98240322    & 1657158636  & -1.3071     & -8.0217     & 16.8684     & 0.5267      & 3.16549e+11 & 3.16549e+11 & 18653471415 & 6.2554     \\\\\n",
       "\t2016-03-14 & 600000.SH   & 浦发银行    & 14.9875     & 14.9080     & 15.4291     & 14.8550     & 14.8903     & 56922239    & 973317374   & -0.0971     & -0.6482     & 17.0991     & 0.3052      & 3.14498e+11 & 3.14498e+11 & 18653471415 & 6.2149     \\\\\n",
       "\t2016-03-15 & 600000.SH   & 浦发银行    & 14.8903     & 14.9698     & 15.1818     & 14.8462     & 15.0316     & 37540932    & 638223050   &  0.1413     &  0.9490     & 17.0007     & 0.2013      & 3.17482e+11 & 3.17482e+11 & 18653471415 & 6.2739     \\\\\n",
       "\t2016-03-16 & 600000.SH   & 浦发银行    & 15.0316     & 14.9433     & 15.9590     & 14.9345     & 15.9236     & 108404378   & 1924212601  &  0.8920     &  5.9342     & 17.7503     & 0.5811      & 3.36322e+11 & 3.36322e+11 & 18653471415 & 6.6462     \\\\\n",
       "\t... & ... & ... & ... & ... & ... & ... & ... & ... & ... & ... & ... & ... & ... & ... & ... & ... & ...\\\\\n",
       "\t2017-03-24 & 600000.SH   & 浦发银行    & 15.88       & 15.85       & 16.00       & 15.83       & 15.96       & 19902006    & 316984958   &  0.08       &  0.5038     & 15.9273     & 0.0921      & 3.45028e+11 & 3.45028e+11 & 21618279922 & 6.4978     \\\\\n",
       "\t2017-03-27 & 600000.SH   & 浦发银行    & 15.96       & 15.97       & 16.13       & 15.90       & 16.04       & 18997369    & 304990151   &  0.08       &  0.5013     & 16.0543     & 0.0879      & 3.46757e+11 & 3.46757e+11 & 21618279922 & 6.5304     \\\\\n",
       "\t2017-03-28 & 600000.SH   & 浦发银行    & 16.04       & 16.11       & 16.13       & 15.97       & 16.01       & 13212969    & 211750766   & -0.03       & -0.1870     & 16.026      & 0.0611      & 3.46109e+11 & 3.46109e+11 & 21618279922 & 6.5182     \\\\\n",
       "\t2017-03-29 & 600000.SH   & 浦发银行    & 16.01       & 16.01       & 16.11       & 15.80       & 15.87       & 23446792    & 372794465   & -0.14       & -0.8745     & 15.8996     & 0.1085      & 3.43082e+11 & 3.43082e+11 & 21618279922 & 6.4612     \\\\\n",
       "\t2017-03-30 & 600000.SH   & 浦发银行    & 15.87       & 15.88       & 15.90       & 15.72       & 15.81       & 23645144    & 373665115   & -0.06       & -0.3781     & 15.803      & 0.1094      & 3.41785e+11 & 3.41785e+11 & 21618279922 & 6.4368     \\\\\n",
       "\t2017-03-31 & 600000.SH   & 浦发银行    & 15.81       & 15.78       & 16.05       & 15.77       & 16.01       & 24187120    & 385793421   &  0.20       &  1.2650     & 15.9504     & 0.1119      & 3.46109e+11 & 3.46109e+11 & 21618279922 & 6.5182     \\\\\n",
       "\t2017-04-05 & 600000.SH   & 浦发银行    & 16.01       & 16.05       & 16.20       & 15.89       & 16.16       & 31036271    & 499121565   &  0.15       &  0.9369     & 16.0819     & 0.1436      & 3.49351e+11 & 3.49351e+11 & 21618279922 & 6.5792     \\\\\n",
       "\t2017-04-06 & 600000.SH   & 浦发银行    & 16.16       & 16.09       & 16.18       & 16.03       & 16.10       & 22335442    & 359361840   & -0.06       & -0.3713     & 16.0893     & 0.1033      & 3.48054e+11 & 3.48054e+11 & 21618279922 & 6.5548     \\\\\n",
       "\t2017-04-07 & 600000.SH   & 浦发银行    & 16.10       & 16.06       & 16.16       & 16.02       & 16.10       & 20126948    & 323821647   &  0.00       &  0.0000     & 16.089      & 0.0931      & 3.48054e+11 & 3.48054e+11 & 21618279922 & 6.5548     \\\\\n",
       "\t2017-04-10 & 600000.SH   & 浦发银行    & 16.10       & 16.12       & 16.12       & 15.94       & 15.97       & 16154024    & 258662668   & -0.13       & -0.8075     & 16.0123     & 0.0747      & 3.45244e+11 & 3.45244e+11 & 21618279922 & 6.5019     \\\\\n",
       "\t2017-04-11 & 600000.SH   & 浦发银行    & 15.97       & 15.97       & 15.99       & 15.81       & 15.89       & 18611375    & 295381671   & -0.08       & -0.5009     & 15.871      & 0.0861      & 3.43514e+11 & 3.43514e+11 & 21618279922 & 6.4693     \\\\\n",
       "\t2017-04-12 & 600000.SH   & 浦发银行    & 15.89       & 15.88       & 15.96       & 15.75       & 15.89       & 22210541    & 352357729   &  0.00       &  0.0000     & 15.8644     & 0.1027      & 3.43514e+11 & 3.43514e+11 & 21618279922 & 6.4693     \\\\\n",
       "\t2017-04-13 & 600000.SH   & 浦发银行    & 15.89       & 15.88       & 15.89       & 15.73       & 15.75       & 23426650    & 369388222   & -0.14       & -0.8811     & 15.7679     & 0.1084      & 3.40488e+11 & 3.40488e+11 & 21618279922 & 6.4123     \\\\\n",
       "\t2017-04-14 & 600000.SH   & 浦发银行    & 15.75       & 15.76       & 15.78       & 15.42       & 15.51       & 40156553    & 625510632   & -0.24       & -1.5238     & 15.5768     & 0.1858      & 3.35300e+11 & 3.35300e+11 & 21618279922 & 6.3146     \\\\\n",
       "\t2017-04-17 & 600000.SH   & 浦发银行    & 15.51       & 15.53       & 15.60       & 15.30       & 15.56       & 36739448    & 566536789   &  0.05       &  0.3224     & 15.4204     & 0.1699      & 3.36380e+11 & 3.36380e+11 & 21618279922 & 6.3350     \\\\\n",
       "\t2017-04-18 & 600000.SH   & 浦发银行    & 15.56       & 15.50       & 15.52       & 15.30       & 15.30       & 22889980    & 351624622   & -0.26       & -1.6710     & 15.3615     & 0.1059      & 3.30760e+11 & 3.30760e+11 & 21618279922 & 6.2291     \\\\\n",
       "\t2017-04-19 & 600000.SH   & 浦发银行    & 15.30       & 15.25       & 15.27       & 15.11       & 15.11       & 24455407    & 371021507   & -0.19       & -1.2418     & 15.1713     & 0.1131      & 3.26652e+11 & 3.26652e+11 & 21618279922 & 6.1518     \\\\\n",
       "\t2017-04-20 & 600000.SH   & 浦发银行    & 15.11       & 15.12       & 15.14       & 14.90       & 14.91       & 41061406    & 614436383   & -0.20       & -1.3236     & 14.9638     & 0.1899      & 3.22329e+11 & 3.22329e+11 & 21618279922 & 6.0703     \\\\\n",
       "\t2017-04-21 & 600000.SH   & 浦发银行    & 14.91       & 14.92       & 15.07       & 14.85       & 15.05       & 22688358    & 340453104   &  0.14       &  0.9390     & 15.0056     & 0.1049      & 3.25355e+11 & 3.25355e+11 & 21618279922 & 6.1273     \\\\\n",
       "\t2017-04-24 & 600000.SH   & 浦发银行    & 15.05       & 15.05       & 15.11       & 14.91       & 15.00       & 17627803    & 264649933   & -0.05       & -0.3322     & 15.0132     & 0.0815      & 3.24274e+11 & 3.24274e+11 & 21618279922 & 6.1070     \\\\\n",
       "\t2017-04-25 & 600000.SH   & 浦发银行    & 15.00       & 15.02       & 15.10       & 14.99       & 15.05       & 12975919    & 195296862   &  0.05       &  0.3333     & 15.0507     & 0.0600      & 3.25355e+11 & 3.25355e+11 & 21618279922 & 6.1273     \\\\\n",
       "\t2017-04-26 & 600000.SH   & 浦发银行    & 15.05       & 15.06       & 15.11       & 15.00       & 15.05       & 14939871    & 225022668   &  0.00       &  0.0000     & 15.0619     & 0.0691      & 3.25355e+11 & 3.25355e+11 & 21618279922 & 6.1273     \\\\\n",
       "\t2017-04-27 & 600000.SH   & 浦发银行    & 15.05       & 15.05       & 15.25       & 15.03       & 15.21       & 22887645    & 345791526   &  0.16       &  1.0631     & 15.1082     & 0.1059      & 3.28814e+11 & 3.28814e+11 & 21618279922 & 6.1925     \\\\\n",
       "\t2017-04-28 & 600000.SH   & 浦发银行    & 15.21       & 15.15       & 15.22       & 15.08       & 15.21       & 15718509    & 238419161   &  0.00       &  0.0000     & 15.1681     & 0.0727      & 3.28814e+11 & 3.28814e+11 & 21618279922 & 6.1925     \\\\\n",
       "\t2017-05-02 & 600000.SH   & 浦发银行    & 15.21       & 15.21       & 15.22       & 15.13       & 15.16       & 12607509    & 191225527   & -0.05       & -0.3287     & 15.1676     & 0.0583      & 3.27733e+11 & 3.27733e+11 & 21618279922 & 6.1721     \\\\\n",
       "\t2017-05-03 & 600000.SH   & 浦发银行    & 15.16       & 15.16       & 15.16       & 15.05       & 15.08       & 14247943    & 215130847   & -0.08       & -0.5277     & 15.0991     & 0.0659      & 3.26004e+11 & 3.26004e+11 & 21618279922 & 6.1395     \\\\\n",
       "\t2017-05-04 & 600000.SH   & 浦发银行    & 15.08       & 15.07       & 15.07       & 14.90       & 14.98       & 19477788    & 291839737   & -0.10       & -0.6631     & 14.9832     & 0.0901      & 3.23842e+11 & 3.23842e+11 & 21618279922 & 6.0988     \\\\\n",
       "\t2017-05-05 & 600000.SH   & 浦发银行    & 14.98       & 14.95       & 14.98       & 14.52       & 14.92       & 40194577    & 592160198   & -0.06       & -0.4005     & 14.7323     & 0.1859      & 3.22545e+11 & 3.22545e+11 & 21618279922 & 6.0744     \\\\\n",
       "\t2017-05-08 & 600000.SH   & 浦发银行    & 14.92       & 14.78       & 14.90       & 14.51       & 14.86       & 43568576    & 638781010   & -0.06       & -0.4021     & 14.6615     & 0.2015      & 3.21248e+11 & 3.21248e+11 & 21618279922 & 6.0500     \\\\\n",
       "\t2017-05-09 & 600000.SH   & 浦发银行    & 14.86       & 14.69       & 14.84       & 14.66       & 14.76       & 19225492    & 283864640   & -0.10       & -0.6729     & 14.765      & 0.0889      & 3.19086e+11 & 3.19086e+11 & 21618279922 & 6.0093     \\\\\n",
       "\\end{tabular}\n"
      ],
      "text/markdown": [
       "\n",
       "| <!--/--> | ﻿代码 | 简称 | 前收盘价(元) | 开盘价(元) | 最高价(元) | 最低价(元) | 收盘价(元) | 成交量(股) | 成交金额(元) | 涨跌(元) | 涨跌幅(%) | 均价(元) | 换手率(%) | A股流通市值(元) | 总市值(元) | A股流通股本(股) | 市盈率 | \n",
       "|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|\n",
       "| 2016-01-04 | 600000.SH   | 浦发银行    | 16.1356     | 16.1444     | 16.1444     | 15.4997     | 15.7205     | 42240610    | 754425783   | -0.4151     | -2.5725     | 17.8602     | 0.2264      | 3.32032e+11 | 3.32032e+11 | 18653471415 | 6.5614      | \n",
       "| 2016-01-05 | 600000.SH   | 浦发银行    | 15.7205     | 15.4644     | 15.9501     | 15.3672     | 15.8618     | 58054793    | 1034181474  |  0.1413     |  0.8989     | 17.8139     | 0.3112      | 3.35016e+11 | 3.35016e+11 | 18653471415 | 6.6204      | \n",
       "| 2016-01-06 | 600000.SH   | 浦发银行    | 15.8618     | 15.8088     | 16.0208     | 15.6234     | 15.9855     | 46772653    | 838667398   |  0.1236     |  0.7795     | 17.9307     | 0.2507      | 3.37628e+11 | 3.37628e+11 | 18653471415 | 6.6720      | \n",
       "| 2016-01-07 | 600000.SH   | 浦发银行    | 15.9855     | 15.7205     | 15.8088     | 15.3672     | 15.4644     | 11350479    | 199502702   | -0.5211     | -3.2597     | 17.5766     | 0.0608      | 3.26622e+11 | 3.26622e+11 | 18653471415 | 6.4545      | \n",
       "| 2016-01-08 | 600000.SH   | 浦发银行    | 15.4644     | 15.6675     | 15.7912     | 14.9345     | 15.4467     | 71918296    | 1262105060  | -0.0177     | -0.1142     | 17.5492     | 0.3855      | 3.26249e+11 | 3.26249e+11 | 18653471415 | 6.4471      | \n",
       "| 2016-01-11 | 600000.SH   | 浦发银行    | 15.4467     | 15.1994     | 15.4114     | 14.9786     | 15.0581     | 90177135    | 1550155933  | -0.3886     | -2.5157     | 17.1901     | 0.4834      | 3.18042e+11 | 3.18042e+11 | 18653471415 | 6.2849      | \n",
       "| 2016-01-12 | 600000.SH   | 浦发银行    | 15.0581     | 15.1641     | 15.4732     | 15.0846     | 15.4114     | 55374454    | 964061502   |  0.3533     |  2.3460     | 17.4099     | 0.2969      | 3.25503e+11 | 3.25503e+11 | 18653471415 | 6.4324      | \n",
       "| 2016-01-13 | 600000.SH   | 浦发银行    | 15.4114     | 15.5174     | 15.8088     | 15.3231     | 15.3584     | 47869312    | 843717365   | -0.0530     | -0.3438     | 17.6254     | 0.2566      | 3.24384e+11 | 3.24384e+11 | 18653471415 | 6.4102      | \n",
       "| 2016-01-14 | 600000.SH   | 浦发银行    | 15.3584     | 15.0140     | 15.8883     | 14.9168     | 15.8265     | 54838833    | 966117848   |  0.4681     |  3.0477     | 17.6174     | 0.2940      | 3.34270e+11 | 3.34270e+11 | 18653471415 | 6.6056      | \n",
       "| 2016-01-15 | 600000.SH   | 浦发银行    | 15.8265     | 15.7205     | 16.0296     | 15.4732     | 15.5262     | 46723139    | 836146426   | -0.3003     | -1.8973     | 17.8958     | 0.2505      | 3.27928e+11 | 3.27928e+11 | 18653471415 | 6.4803      | \n",
       "| 2016-01-18 | 600000.SH   | 浦发银行    | 15.5262     | 15.3937     | 15.8883     | 15.2966     | 15.6145     | 32729006    | 583291559   |  0.0883     |  0.5688     | 17.8219     | 0.1755      | 3.29793e+11 | 3.29793e+11 | 18653471415 | 6.5171      | \n",
       "| 2016-01-19 | 600000.SH   | 浦发银行    | 15.6145     | 15.7029     | 15.7912     | 15.4556     | 15.6940     | 29807159    | 527753175   |  0.0795     |  0.5090     | 17.7056     | 0.1598      | 3.31472e+11 | 3.31472e+11 | 18653471415 | 6.5503      | \n",
       "| 2016-01-20 | 600000.SH   | 浦发银行    | 15.6940     | 15.5527     | 15.6322     | 15.0846     | 15.2348     | 35968636    | 623546924   | -0.4593     | -2.9263     | 17.3359     | 0.1928      | 3.21772e+11 | 3.21772e+11 | 18653471415 | 6.3586      | \n",
       "| 2016-01-21 | 600000.SH   | 浦发银行    | 15.2348     | 15.2083     | 15.4202     | 14.5724     | 14.6430     | 34197115    | 582845476   | -0.5917     | -3.8841     | 17.0437     | 0.1833      | 3.09275e+11 | 3.09275e+11 | 18653471415 | 6.1117      | \n",
       "| 2016-01-22 | 600000.SH   | 浦发银行    | 14.6430     | 14.8727     | 15.1111     | 14.5636     | 15.0316     | 42007318    | 708179241   |  0.3886     |  2.6538     | 16.8585     | 0.2252      | 3.17482e+11 | 3.17482e+11 | 18653471415 | 6.2739      | \n",
       "| 2016-01-25 | 600000.SH   | 浦发银行    | 15.0316     | 15.0140     | 15.1641     | 14.7667     | 15.0405     | 23558971    | 400445071   |  0.0088     |  0.0588     | 16.9976     | 0.1263      | 3.17669e+11 | 3.17669e+11 | 18653471415 | 6.2775      | \n",
       "| 2016-01-26 | 600000.SH   | 浦发银行    | 15.0405     | 14.9786     | 15.1376     | 14.4841     | 14.7137     | 38279766    | 643611762   | -0.3268     | -2.1726     | 16.8134     | 0.2052      | 3.10767e+11 | 3.10767e+11 | 18653471415 | 6.1412      | \n",
       "| 2016-01-27 | 600000.SH   | 浦发银行    | 14.7137     | 14.7932     | 14.9963     | 14.5812     | 14.7314     | 44291307    | 742640743   |  0.0177     |  0.1200     | 16.7672     | 0.2374      | 3.11140e+11 | 3.11140e+11 | 18653471415 | 6.1485      | \n",
       "| 2016-01-28 | 600000.SH   | 浦发银行    | 14.7314     | 14.8020     | 14.8550     | 14.0248     | 14.6430     | 38902180    | 643984171   | -0.0883     | -0.5995     | 16.5539     | 0.2086      | 3.09275e+11 | 3.09275e+11 | 18653471415 | 6.1117      | \n",
       "| 2016-01-29 | 600000.SH   | 浦发银行    | 14.6430     | 14.5901     | 15.0581     | 14.4929     | 14.9257     | 47429000    | 799493381   |  0.2826     |  1.9300     | 16.8566     | 0.2543      | 3.15244e+11 | 3.15244e+11 | 18653471415 | 6.2296      | \n",
       "| 2016-02-01 | 600000.SH   | 浦发银行    | 14.9257     | 15.0051     | 15.0140     | 14.4929     | 14.5724     | 29139596    | 485275132   | -0.3533     | -2.3669     | 16.6535     | 0.1562      | 3.07782e+11 | 3.07782e+11 | 18653471415 | 6.0822      | \n",
       "| 2016-02-02 | 600000.SH   | 浦发银行    | 14.5724     | 14.5724     | 14.9610     | 14.5371     | 14.8020     | 25380981    | 425396889   |  0.2296     |  1.5758     | 16.7605     | 0.1361      | 3.12632e+11 | 3.12632e+11 | 18653471415 | 6.1780      | \n",
       "| 2016-02-03 | 600000.SH   | 浦发银行    | 14.8020     | 14.6607     | 14.7137     | 14.5282     | 14.6695     | 27779183    | 459255616   | -0.1325     | -0.8950     | 16.5324     | 0.1489      | 3.09834e+11 | 3.09834e+11 | 18653471415 | 6.1227      | \n",
       "| 2016-02-04 | 600000.SH   | 浦发银行    | 14.6695     | 14.8727     | 15.2966     | 14.6872     | 15.2789     | 47162860    | 799283799   |  0.6094     |  4.1541     | 16.9473     | 0.2528      | 3.22705e+11 | 3.22705e+11 | 18653471415 | 6.3771      | \n",
       "| 2016-02-05 | 600000.SH   | 浦发银行    | 15.2789     | 15.2259     | 16.2416     | 15.1465     | 16.2328     | 78413454    | 1401156041  |  0.9538     |  6.2428     | 17.8688     | 0.4204      | 3.42851e+11 | 3.42851e+11 | 18653471415 | 6.7752      | \n",
       "| 2016-02-15 | 600000.SH   | 浦发银行    | 16.2328     | 15.8795     | 16.3211     | 15.7205     | 16.2946     | 67296317    | 1221398339  |  0.0618     |  0.3808     | 18.1496     | 0.3608      | 3.44157e+11 | 3.44157e+11 | 18653471415 | 6.8010      | \n",
       "| 2016-03-11 | 600000.SH   | 浦发银行    | 16.2946     | 15.4644     | 15.4821     | 14.6695     | 14.9875     | 98240322    | 1657158636  | -1.3071     | -8.0217     | 16.8684     | 0.5267      | 3.16549e+11 | 3.16549e+11 | 18653471415 | 6.2554      | \n",
       "| 2016-03-14 | 600000.SH   | 浦发银行    | 14.9875     | 14.9080     | 15.4291     | 14.8550     | 14.8903     | 56922239    | 973317374   | -0.0971     | -0.6482     | 17.0991     | 0.3052      | 3.14498e+11 | 3.14498e+11 | 18653471415 | 6.2149      | \n",
       "| 2016-03-15 | 600000.SH   | 浦发银行    | 14.8903     | 14.9698     | 15.1818     | 14.8462     | 15.0316     | 37540932    | 638223050   |  0.1413     |  0.9490     | 17.0007     | 0.2013      | 3.17482e+11 | 3.17482e+11 | 18653471415 | 6.2739      | \n",
       "| 2016-03-16 | 600000.SH   | 浦发银行    | 15.0316     | 14.9433     | 15.9590     | 14.9345     | 15.9236     | 108404378   | 1924212601  |  0.8920     |  5.9342     | 17.7503     | 0.5811      | 3.36322e+11 | 3.36322e+11 | 18653471415 | 6.6462      | \n",
       "| ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | \n",
       "| 2017-03-24 | 600000.SH   | 浦发银行    | 15.88       | 15.85       | 16.00       | 15.83       | 15.96       | 19902006    | 316984958   |  0.08       |  0.5038     | 15.9273     | 0.0921      | 3.45028e+11 | 3.45028e+11 | 21618279922 | 6.4978      | \n",
       "| 2017-03-27 | 600000.SH   | 浦发银行    | 15.96       | 15.97       | 16.13       | 15.90       | 16.04       | 18997369    | 304990151   |  0.08       |  0.5013     | 16.0543     | 0.0879      | 3.46757e+11 | 3.46757e+11 | 21618279922 | 6.5304      | \n",
       "| 2017-03-28 | 600000.SH   | 浦发银行    | 16.04       | 16.11       | 16.13       | 15.97       | 16.01       | 13212969    | 211750766   | -0.03       | -0.1870     | 16.026      | 0.0611      | 3.46109e+11 | 3.46109e+11 | 21618279922 | 6.5182      | \n",
       "| 2017-03-29 | 600000.SH   | 浦发银行    | 16.01       | 16.01       | 16.11       | 15.80       | 15.87       | 23446792    | 372794465   | -0.14       | -0.8745     | 15.8996     | 0.1085      | 3.43082e+11 | 3.43082e+11 | 21618279922 | 6.4612      | \n",
       "| 2017-03-30 | 600000.SH   | 浦发银行    | 15.87       | 15.88       | 15.90       | 15.72       | 15.81       | 23645144    | 373665115   | -0.06       | -0.3781     | 15.803      | 0.1094      | 3.41785e+11 | 3.41785e+11 | 21618279922 | 6.4368      | \n",
       "| 2017-03-31 | 600000.SH   | 浦发银行    | 15.81       | 15.78       | 16.05       | 15.77       | 16.01       | 24187120    | 385793421   |  0.20       |  1.2650     | 15.9504     | 0.1119      | 3.46109e+11 | 3.46109e+11 | 21618279922 | 6.5182      | \n",
       "| 2017-04-05 | 600000.SH   | 浦发银行    | 16.01       | 16.05       | 16.20       | 15.89       | 16.16       | 31036271    | 499121565   |  0.15       |  0.9369     | 16.0819     | 0.1436      | 3.49351e+11 | 3.49351e+11 | 21618279922 | 6.5792      | \n",
       "| 2017-04-06 | 600000.SH   | 浦发银行    | 16.16       | 16.09       | 16.18       | 16.03       | 16.10       | 22335442    | 359361840   | -0.06       | -0.3713     | 16.0893     | 0.1033      | 3.48054e+11 | 3.48054e+11 | 21618279922 | 6.5548      | \n",
       "| 2017-04-07 | 600000.SH   | 浦发银行    | 16.10       | 16.06       | 16.16       | 16.02       | 16.10       | 20126948    | 323821647   |  0.00       |  0.0000     | 16.089      | 0.0931      | 3.48054e+11 | 3.48054e+11 | 21618279922 | 6.5548      | \n",
       "| 2017-04-10 | 600000.SH   | 浦发银行    | 16.10       | 16.12       | 16.12       | 15.94       | 15.97       | 16154024    | 258662668   | -0.13       | -0.8075     | 16.0123     | 0.0747      | 3.45244e+11 | 3.45244e+11 | 21618279922 | 6.5019      | \n",
       "| 2017-04-11 | 600000.SH   | 浦发银行    | 15.97       | 15.97       | 15.99       | 15.81       | 15.89       | 18611375    | 295381671   | -0.08       | -0.5009     | 15.871      | 0.0861      | 3.43514e+11 | 3.43514e+11 | 21618279922 | 6.4693      | \n",
       "| 2017-04-12 | 600000.SH   | 浦发银行    | 15.89       | 15.88       | 15.96       | 15.75       | 15.89       | 22210541    | 352357729   |  0.00       |  0.0000     | 15.8644     | 0.1027      | 3.43514e+11 | 3.43514e+11 | 21618279922 | 6.4693      | \n",
       "| 2017-04-13 | 600000.SH   | 浦发银行    | 15.89       | 15.88       | 15.89       | 15.73       | 15.75       | 23426650    | 369388222   | -0.14       | -0.8811     | 15.7679     | 0.1084      | 3.40488e+11 | 3.40488e+11 | 21618279922 | 6.4123      | \n",
       "| 2017-04-14 | 600000.SH   | 浦发银行    | 15.75       | 15.76       | 15.78       | 15.42       | 15.51       | 40156553    | 625510632   | -0.24       | -1.5238     | 15.5768     | 0.1858      | 3.35300e+11 | 3.35300e+11 | 21618279922 | 6.3146      | \n",
       "| 2017-04-17 | 600000.SH   | 浦发银行    | 15.51       | 15.53       | 15.60       | 15.30       | 15.56       | 36739448    | 566536789   |  0.05       |  0.3224     | 15.4204     | 0.1699      | 3.36380e+11 | 3.36380e+11 | 21618279922 | 6.3350      | \n",
       "| 2017-04-18 | 600000.SH   | 浦发银行    | 15.56       | 15.50       | 15.52       | 15.30       | 15.30       | 22889980    | 351624622   | -0.26       | -1.6710     | 15.3615     | 0.1059      | 3.30760e+11 | 3.30760e+11 | 21618279922 | 6.2291      | \n",
       "| 2017-04-19 | 600000.SH   | 浦发银行    | 15.30       | 15.25       | 15.27       | 15.11       | 15.11       | 24455407    | 371021507   | -0.19       | -1.2418     | 15.1713     | 0.1131      | 3.26652e+11 | 3.26652e+11 | 21618279922 | 6.1518      | \n",
       "| 2017-04-20 | 600000.SH   | 浦发银行    | 15.11       | 15.12       | 15.14       | 14.90       | 14.91       | 41061406    | 614436383   | -0.20       | -1.3236     | 14.9638     | 0.1899      | 3.22329e+11 | 3.22329e+11 | 21618279922 | 6.0703      | \n",
       "| 2017-04-21 | 600000.SH   | 浦发银行    | 14.91       | 14.92       | 15.07       | 14.85       | 15.05       | 22688358    | 340453104   |  0.14       |  0.9390     | 15.0056     | 0.1049      | 3.25355e+11 | 3.25355e+11 | 21618279922 | 6.1273      | \n",
       "| 2017-04-24 | 600000.SH   | 浦发银行    | 15.05       | 15.05       | 15.11       | 14.91       | 15.00       | 17627803    | 264649933   | -0.05       | -0.3322     | 15.0132     | 0.0815      | 3.24274e+11 | 3.24274e+11 | 21618279922 | 6.1070      | \n",
       "| 2017-04-25 | 600000.SH   | 浦发银行    | 15.00       | 15.02       | 15.10       | 14.99       | 15.05       | 12975919    | 195296862   |  0.05       |  0.3333     | 15.0507     | 0.0600      | 3.25355e+11 | 3.25355e+11 | 21618279922 | 6.1273      | \n",
       "| 2017-04-26 | 600000.SH   | 浦发银行    | 15.05       | 15.06       | 15.11       | 15.00       | 15.05       | 14939871    | 225022668   |  0.00       |  0.0000     | 15.0619     | 0.0691      | 3.25355e+11 | 3.25355e+11 | 21618279922 | 6.1273      | \n",
       "| 2017-04-27 | 600000.SH   | 浦发银行    | 15.05       | 15.05       | 15.25       | 15.03       | 15.21       | 22887645    | 345791526   |  0.16       |  1.0631     | 15.1082     | 0.1059      | 3.28814e+11 | 3.28814e+11 | 21618279922 | 6.1925      | \n",
       "| 2017-04-28 | 600000.SH   | 浦发银行    | 15.21       | 15.15       | 15.22       | 15.08       | 15.21       | 15718509    | 238419161   |  0.00       |  0.0000     | 15.1681     | 0.0727      | 3.28814e+11 | 3.28814e+11 | 21618279922 | 6.1925      | \n",
       "| 2017-05-02 | 600000.SH   | 浦发银行    | 15.21       | 15.21       | 15.22       | 15.13       | 15.16       | 12607509    | 191225527   | -0.05       | -0.3287     | 15.1676     | 0.0583      | 3.27733e+11 | 3.27733e+11 | 21618279922 | 6.1721      | \n",
       "| 2017-05-03 | 600000.SH   | 浦发银行    | 15.16       | 15.16       | 15.16       | 15.05       | 15.08       | 14247943    | 215130847   | -0.08       | -0.5277     | 15.0991     | 0.0659      | 3.26004e+11 | 3.26004e+11 | 21618279922 | 6.1395      | \n",
       "| 2017-05-04 | 600000.SH   | 浦发银行    | 15.08       | 15.07       | 15.07       | 14.90       | 14.98       | 19477788    | 291839737   | -0.10       | -0.6631     | 14.9832     | 0.0901      | 3.23842e+11 | 3.23842e+11 | 21618279922 | 6.0988      | \n",
       "| 2017-05-05 | 600000.SH   | 浦发银行    | 14.98       | 14.95       | 14.98       | 14.52       | 14.92       | 40194577    | 592160198   | -0.06       | -0.4005     | 14.7323     | 0.1859      | 3.22545e+11 | 3.22545e+11 | 21618279922 | 6.0744      | \n",
       "| 2017-05-08 | 600000.SH   | 浦发银行    | 14.92       | 14.78       | 14.90       | 14.51       | 14.86       | 43568576    | 638781010   | -0.06       | -0.4021     | 14.6615     | 0.2015      | 3.21248e+11 | 3.21248e+11 | 21618279922 | 6.0500      | \n",
       "| 2017-05-09 | 600000.SH   | 浦发银行    | 14.86       | 14.69       | 14.84       | 14.66       | 14.76       | 19225492    | 283864640   | -0.10       | -0.6729     | 14.765      | 0.0889      | 3.19086e+11 | 3.19086e+11 | 21618279922 | 6.0093      | \n",
       "\n",
       "\n"
      ],
      "text/plain": [
       "           ﻿代码      简称     前收盘价(元) 开盘价(元) 最高价(元) 最低价(元)\n",
       "2016-01-04 600000.SH 浦发银行 16.1356      16.1444    16.1444    15.4997   \n",
       "2016-01-05 600000.SH 浦发银行 15.7205      15.4644    15.9501    15.3672   \n",
       "2016-01-06 600000.SH 浦发银行 15.8618      15.8088    16.0208    15.6234   \n",
       "2016-01-07 600000.SH 浦发银行 15.9855      15.7205    15.8088    15.3672   \n",
       "2016-01-08 600000.SH 浦发银行 15.4644      15.6675    15.7912    14.9345   \n",
       "2016-01-11 600000.SH 浦发银行 15.4467      15.1994    15.4114    14.9786   \n",
       "2016-01-12 600000.SH 浦发银行 15.0581      15.1641    15.4732    15.0846   \n",
       "2016-01-13 600000.SH 浦发银行 15.4114      15.5174    15.8088    15.3231   \n",
       "2016-01-14 600000.SH 浦发银行 15.3584      15.0140    15.8883    14.9168   \n",
       "2016-01-15 600000.SH 浦发银行 15.8265      15.7205    16.0296    15.4732   \n",
       "2016-01-18 600000.SH 浦发银行 15.5262      15.3937    15.8883    15.2966   \n",
       "2016-01-19 600000.SH 浦发银行 15.6145      15.7029    15.7912    15.4556   \n",
       "2016-01-20 600000.SH 浦发银行 15.6940      15.5527    15.6322    15.0846   \n",
       "2016-01-21 600000.SH 浦发银行 15.2348      15.2083    15.4202    14.5724   \n",
       "2016-01-22 600000.SH 浦发银行 14.6430      14.8727    15.1111    14.5636   \n",
       "2016-01-25 600000.SH 浦发银行 15.0316      15.0140    15.1641    14.7667   \n",
       "2016-01-26 600000.SH 浦发银行 15.0405      14.9786    15.1376    14.4841   \n",
       "2016-01-27 600000.SH 浦发银行 14.7137      14.7932    14.9963    14.5812   \n",
       "2016-01-28 600000.SH 浦发银行 14.7314      14.8020    14.8550    14.0248   \n",
       "2016-01-29 600000.SH 浦发银行 14.6430      14.5901    15.0581    14.4929   \n",
       "2016-02-01 600000.SH 浦发银行 14.9257      15.0051    15.0140    14.4929   \n",
       "2016-02-02 600000.SH 浦发银行 14.5724      14.5724    14.9610    14.5371   \n",
       "2016-02-03 600000.SH 浦发银行 14.8020      14.6607    14.7137    14.5282   \n",
       "2016-02-04 600000.SH 浦发银行 14.6695      14.8727    15.2966    14.6872   \n",
       "2016-02-05 600000.SH 浦发银行 15.2789      15.2259    16.2416    15.1465   \n",
       "2016-02-15 600000.SH 浦发银行 16.2328      15.8795    16.3211    15.7205   \n",
       "2016-03-11 600000.SH 浦发银行 16.2946      15.4644    15.4821    14.6695   \n",
       "2016-03-14 600000.SH 浦发银行 14.9875      14.9080    15.4291    14.8550   \n",
       "2016-03-15 600000.SH 浦发银行 14.8903      14.9698    15.1818    14.8462   \n",
       "2016-03-16 600000.SH 浦发银行 15.0316      14.9433    15.9590    14.9345   \n",
       "...        ...       ...      ...          ...        ...        ...       \n",
       "2017-03-24 600000.SH 浦发银行 15.88        15.85      16.00      15.83     \n",
       "2017-03-27 600000.SH 浦发银行 15.96        15.97      16.13      15.90     \n",
       "2017-03-28 600000.SH 浦发银行 16.04        16.11      16.13      15.97     \n",
       "2017-03-29 600000.SH 浦发银行 16.01        16.01      16.11      15.80     \n",
       "2017-03-30 600000.SH 浦发银行 15.87        15.88      15.90      15.72     \n",
       "2017-03-31 600000.SH 浦发银行 15.81        15.78      16.05      15.77     \n",
       "2017-04-05 600000.SH 浦发银行 16.01        16.05      16.20      15.89     \n",
       "2017-04-06 600000.SH 浦发银行 16.16        16.09      16.18      16.03     \n",
       "2017-04-07 600000.SH 浦发银行 16.10        16.06      16.16      16.02     \n",
       "2017-04-10 600000.SH 浦发银行 16.10        16.12      16.12      15.94     \n",
       "2017-04-11 600000.SH 浦发银行 15.97        15.97      15.99      15.81     \n",
       "2017-04-12 600000.SH 浦发银行 15.89        15.88      15.96      15.75     \n",
       "2017-04-13 600000.SH 浦发银行 15.89        15.88      15.89      15.73     \n",
       "2017-04-14 600000.SH 浦发银行 15.75        15.76      15.78      15.42     \n",
       "2017-04-17 600000.SH 浦发银行 15.51        15.53      15.60      15.30     \n",
       "2017-04-18 600000.SH 浦发银行 15.56        15.50      15.52      15.30     \n",
       "2017-04-19 600000.SH 浦发银行 15.30        15.25      15.27      15.11     \n",
       "2017-04-20 600000.SH 浦发银行 15.11        15.12      15.14      14.90     \n",
       "2017-04-21 600000.SH 浦发银行 14.91        14.92      15.07      14.85     \n",
       "2017-04-24 600000.SH 浦发银行 15.05        15.05      15.11      14.91     \n",
       "2017-04-25 600000.SH 浦发银行 15.00        15.02      15.10      14.99     \n",
       "2017-04-26 600000.SH 浦发银行 15.05        15.06      15.11      15.00     \n",
       "2017-04-27 600000.SH 浦发银行 15.05        15.05      15.25      15.03     \n",
       "2017-04-28 600000.SH 浦发银行 15.21        15.15      15.22      15.08     \n",
       "2017-05-02 600000.SH 浦发银行 15.21        15.21      15.22      15.13     \n",
       "2017-05-03 600000.SH 浦发银行 15.16        15.16      15.16      15.05     \n",
       "2017-05-04 600000.SH 浦发银行 15.08        15.07      15.07      14.90     \n",
       "2017-05-05 600000.SH 浦发银行 14.98        14.95      14.98      14.52     \n",
       "2017-05-08 600000.SH 浦发银行 14.92        14.78      14.90      14.51     \n",
       "2017-05-09 600000.SH 浦发银行 14.86        14.69      14.84      14.66     \n",
       "           收盘价(元) 成交量(股) 成交金额(元) 涨跌(元) 涨跌幅(%) 均价(元)\n",
       "2016-01-04 15.7205    42240610   754425783    -0.4151  -2.5725   17.8602 \n",
       "2016-01-05 15.8618    58054793   1034181474    0.1413   0.8989   17.8139 \n",
       "2016-01-06 15.9855    46772653   838667398     0.1236   0.7795   17.9307 \n",
       "2016-01-07 15.4644    11350479   199502702    -0.5211  -3.2597   17.5766 \n",
       "2016-01-08 15.4467    71918296   1262105060   -0.0177  -0.1142   17.5492 \n",
       "2016-01-11 15.0581    90177135   1550155933   -0.3886  -2.5157   17.1901 \n",
       "2016-01-12 15.4114    55374454   964061502     0.3533   2.3460   17.4099 \n",
       "2016-01-13 15.3584    47869312   843717365    -0.0530  -0.3438   17.6254 \n",
       "2016-01-14 15.8265    54838833   966117848     0.4681   3.0477   17.6174 \n",
       "2016-01-15 15.5262    46723139   836146426    -0.3003  -1.8973   17.8958 \n",
       "2016-01-18 15.6145    32729006   583291559     0.0883   0.5688   17.8219 \n",
       "2016-01-19 15.6940    29807159   527753175     0.0795   0.5090   17.7056 \n",
       "2016-01-20 15.2348    35968636   623546924    -0.4593  -2.9263   17.3359 \n",
       "2016-01-21 14.6430    34197115   582845476    -0.5917  -3.8841   17.0437 \n",
       "2016-01-22 15.0316    42007318   708179241     0.3886   2.6538   16.8585 \n",
       "2016-01-25 15.0405    23558971   400445071     0.0088   0.0588   16.9976 \n",
       "2016-01-26 14.7137    38279766   643611762    -0.3268  -2.1726   16.8134 \n",
       "2016-01-27 14.7314    44291307   742640743     0.0177   0.1200   16.7672 \n",
       "2016-01-28 14.6430    38902180   643984171    -0.0883  -0.5995   16.5539 \n",
       "2016-01-29 14.9257    47429000   799493381     0.2826   1.9300   16.8566 \n",
       "2016-02-01 14.5724    29139596   485275132    -0.3533  -2.3669   16.6535 \n",
       "2016-02-02 14.8020    25380981   425396889     0.2296   1.5758   16.7605 \n",
       "2016-02-03 14.6695    27779183   459255616    -0.1325  -0.8950   16.5324 \n",
       "2016-02-04 15.2789    47162860   799283799     0.6094   4.1541   16.9473 \n",
       "2016-02-05 16.2328    78413454   1401156041    0.9538   6.2428   17.8688 \n",
       "2016-02-15 16.2946    67296317   1221398339    0.0618   0.3808   18.1496 \n",
       "2016-03-11 14.9875    98240322   1657158636   -1.3071  -8.0217   16.8684 \n",
       "2016-03-14 14.8903    56922239   973317374    -0.0971  -0.6482   17.0991 \n",
       "2016-03-15 15.0316    37540932   638223050     0.1413   0.9490   17.0007 \n",
       "2016-03-16 15.9236    108404378  1924212601    0.8920   5.9342   17.7503 \n",
       "...        ...        ...        ...          ...      ...       ...     \n",
       "2017-03-24 15.96      19902006   316984958     0.08     0.5038   15.9273 \n",
       "2017-03-27 16.04      18997369   304990151     0.08     0.5013   16.0543 \n",
       "2017-03-28 16.01      13212969   211750766    -0.03    -0.1870   16.026  \n",
       "2017-03-29 15.87      23446792   372794465    -0.14    -0.8745   15.8996 \n",
       "2017-03-30 15.81      23645144   373665115    -0.06    -0.3781   15.803  \n",
       "2017-03-31 16.01      24187120   385793421     0.20     1.2650   15.9504 \n",
       "2017-04-05 16.16      31036271   499121565     0.15     0.9369   16.0819 \n",
       "2017-04-06 16.10      22335442   359361840    -0.06    -0.3713   16.0893 \n",
       "2017-04-07 16.10      20126948   323821647     0.00     0.0000   16.089  \n",
       "2017-04-10 15.97      16154024   258662668    -0.13    -0.8075   16.0123 \n",
       "2017-04-11 15.89      18611375   295381671    -0.08    -0.5009   15.871  \n",
       "2017-04-12 15.89      22210541   352357729     0.00     0.0000   15.8644 \n",
       "2017-04-13 15.75      23426650   369388222    -0.14    -0.8811   15.7679 \n",
       "2017-04-14 15.51      40156553   625510632    -0.24    -1.5238   15.5768 \n",
       "2017-04-17 15.56      36739448   566536789     0.05     0.3224   15.4204 \n",
       "2017-04-18 15.30      22889980   351624622    -0.26    -1.6710   15.3615 \n",
       "2017-04-19 15.11      24455407   371021507    -0.19    -1.2418   15.1713 \n",
       "2017-04-20 14.91      41061406   614436383    -0.20    -1.3236   14.9638 \n",
       "2017-04-21 15.05      22688358   340453104     0.14     0.9390   15.0056 \n",
       "2017-04-24 15.00      17627803   264649933    -0.05    -0.3322   15.0132 \n",
       "2017-04-25 15.05      12975919   195296862     0.05     0.3333   15.0507 \n",
       "2017-04-26 15.05      14939871   225022668     0.00     0.0000   15.0619 \n",
       "2017-04-27 15.21      22887645   345791526     0.16     1.0631   15.1082 \n",
       "2017-04-28 15.21      15718509   238419161     0.00     0.0000   15.1681 \n",
       "2017-05-02 15.16      12607509   191225527    -0.05    -0.3287   15.1676 \n",
       "2017-05-03 15.08      14247943   215130847    -0.08    -0.5277   15.0991 \n",
       "2017-05-04 14.98      19477788   291839737    -0.10    -0.6631   14.9832 \n",
       "2017-05-05 14.92      40194577   592160198    -0.06    -0.4005   14.7323 \n",
       "2017-05-08 14.86      43568576   638781010    -0.06    -0.4021   14.6615 \n",
       "2017-05-09 14.76      19225492   283864640    -0.10    -0.6729   14.765  \n",
       "           换手率(%) A股流通市值(元) 总市值(元)  A股流通股本(股) 市盈率\n",
       "2016-01-04 0.2264    3.32032e+11     3.32032e+11 18653471415     6.5614\n",
       "2016-01-05 0.3112    3.35016e+11     3.35016e+11 18653471415     6.6204\n",
       "2016-01-06 0.2507    3.37628e+11     3.37628e+11 18653471415     6.6720\n",
       "2016-01-07 0.0608    3.26622e+11     3.26622e+11 18653471415     6.4545\n",
       "2016-01-08 0.3855    3.26249e+11     3.26249e+11 18653471415     6.4471\n",
       "2016-01-11 0.4834    3.18042e+11     3.18042e+11 18653471415     6.2849\n",
       "2016-01-12 0.2969    3.25503e+11     3.25503e+11 18653471415     6.4324\n",
       "2016-01-13 0.2566    3.24384e+11     3.24384e+11 18653471415     6.4102\n",
       "2016-01-14 0.2940    3.34270e+11     3.34270e+11 18653471415     6.6056\n",
       "2016-01-15 0.2505    3.27928e+11     3.27928e+11 18653471415     6.4803\n",
       "2016-01-18 0.1755    3.29793e+11     3.29793e+11 18653471415     6.5171\n",
       "2016-01-19 0.1598    3.31472e+11     3.31472e+11 18653471415     6.5503\n",
       "2016-01-20 0.1928    3.21772e+11     3.21772e+11 18653471415     6.3586\n",
       "2016-01-21 0.1833    3.09275e+11     3.09275e+11 18653471415     6.1117\n",
       "2016-01-22 0.2252    3.17482e+11     3.17482e+11 18653471415     6.2739\n",
       "2016-01-25 0.1263    3.17669e+11     3.17669e+11 18653471415     6.2775\n",
       "2016-01-26 0.2052    3.10767e+11     3.10767e+11 18653471415     6.1412\n",
       "2016-01-27 0.2374    3.11140e+11     3.11140e+11 18653471415     6.1485\n",
       "2016-01-28 0.2086    3.09275e+11     3.09275e+11 18653471415     6.1117\n",
       "2016-01-29 0.2543    3.15244e+11     3.15244e+11 18653471415     6.2296\n",
       "2016-02-01 0.1562    3.07782e+11     3.07782e+11 18653471415     6.0822\n",
       "2016-02-02 0.1361    3.12632e+11     3.12632e+11 18653471415     6.1780\n",
       "2016-02-03 0.1489    3.09834e+11     3.09834e+11 18653471415     6.1227\n",
       "2016-02-04 0.2528    3.22705e+11     3.22705e+11 18653471415     6.3771\n",
       "2016-02-05 0.4204    3.42851e+11     3.42851e+11 18653471415     6.7752\n",
       "2016-02-15 0.3608    3.44157e+11     3.44157e+11 18653471415     6.8010\n",
       "2016-03-11 0.5267    3.16549e+11     3.16549e+11 18653471415     6.2554\n",
       "2016-03-14 0.3052    3.14498e+11     3.14498e+11 18653471415     6.2149\n",
       "2016-03-15 0.2013    3.17482e+11     3.17482e+11 18653471415     6.2739\n",
       "2016-03-16 0.5811    3.36322e+11     3.36322e+11 18653471415     6.6462\n",
       "...        ...       ...             ...         ...             ...   \n",
       "2017-03-24 0.0921    3.45028e+11     3.45028e+11 21618279922     6.4978\n",
       "2017-03-27 0.0879    3.46757e+11     3.46757e+11 21618279922     6.5304\n",
       "2017-03-28 0.0611    3.46109e+11     3.46109e+11 21618279922     6.5182\n",
       "2017-03-29 0.1085    3.43082e+11     3.43082e+11 21618279922     6.4612\n",
       "2017-03-30 0.1094    3.41785e+11     3.41785e+11 21618279922     6.4368\n",
       "2017-03-31 0.1119    3.46109e+11     3.46109e+11 21618279922     6.5182\n",
       "2017-04-05 0.1436    3.49351e+11     3.49351e+11 21618279922     6.5792\n",
       "2017-04-06 0.1033    3.48054e+11     3.48054e+11 21618279922     6.5548\n",
       "2017-04-07 0.0931    3.48054e+11     3.48054e+11 21618279922     6.5548\n",
       "2017-04-10 0.0747    3.45244e+11     3.45244e+11 21618279922     6.5019\n",
       "2017-04-11 0.0861    3.43514e+11     3.43514e+11 21618279922     6.4693\n",
       "2017-04-12 0.1027    3.43514e+11     3.43514e+11 21618279922     6.4693\n",
       "2017-04-13 0.1084    3.40488e+11     3.40488e+11 21618279922     6.4123\n",
       "2017-04-14 0.1858    3.35300e+11     3.35300e+11 21618279922     6.3146\n",
       "2017-04-17 0.1699    3.36380e+11     3.36380e+11 21618279922     6.3350\n",
       "2017-04-18 0.1059    3.30760e+11     3.30760e+11 21618279922     6.2291\n",
       "2017-04-19 0.1131    3.26652e+11     3.26652e+11 21618279922     6.1518\n",
       "2017-04-20 0.1899    3.22329e+11     3.22329e+11 21618279922     6.0703\n",
       "2017-04-21 0.1049    3.25355e+11     3.25355e+11 21618279922     6.1273\n",
       "2017-04-24 0.0815    3.24274e+11     3.24274e+11 21618279922     6.1070\n",
       "2017-04-25 0.0600    3.25355e+11     3.25355e+11 21618279922     6.1273\n",
       "2017-04-26 0.0691    3.25355e+11     3.25355e+11 21618279922     6.1273\n",
       "2017-04-27 0.1059    3.28814e+11     3.28814e+11 21618279922     6.1925\n",
       "2017-04-28 0.0727    3.28814e+11     3.28814e+11 21618279922     6.1925\n",
       "2017-05-02 0.0583    3.27733e+11     3.27733e+11 21618279922     6.1721\n",
       "2017-05-03 0.0659    3.26004e+11     3.26004e+11 21618279922     6.1395\n",
       "2017-05-04 0.0901    3.23842e+11     3.23842e+11 21618279922     6.0988\n",
       "2017-05-05 0.1859    3.22545e+11     3.22545e+11 21618279922     6.0744\n",
       "2017-05-08 0.2015    3.21248e+11     3.21248e+11 21618279922     6.0500\n",
       "2017-05-09 0.0889    3.19086e+11     3.19086e+11 21618279922     6.0093"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "df %>%\n",
    "  column_to_rownames(var='日期')"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 70.以5个数据作为一个数据滑动窗口，在这个5个数据上取均值(收盘价)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "library(RcppRoll)\n",
    "df %>%\n",
    "  transmute(avg_5 = roll_mean(`收盘价(元)`,n = 5,align=\"right\",fill = NA))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 71.以5个数据作为一个数据滑动窗口，计算这五个数据总和(收盘价)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "df %>%\n",
    "  transmute(sum_5 = roll_sum(`收盘价(元)`,n = 5,align=\"right\",fill = NA))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 72.将收盘价5日均线、20日均线与原始数据绘制在同一个图上"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "collapsed": false
   },
   "outputs": [],
   "source": [
    "df %>%\n",
    "  mutate(avg_5 = roll_mean(`收盘价(元)`,n = 5,align=\"right\",fill = NA),\n",
    "         avg_20 = roll_mean(`收盘价(元)`,n = 20,align=\"right\",fill = NA)) %>%\n",
    "  ggplot() +\n",
    "  geom_line(aes(日期,`收盘价(元)`),color = 'steelblue',size = 1.2) +\n",
    "  geom_line(aes(日期,avg_5),color = 'orange',size = 1.2) +\n",
    "  geom_line(aes(日期,avg_20),color = 'green',size = 1.2)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 73.按周为采样规则，取一周收盘价最大值"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 84,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "------------------------------------------------------------------------------\n",
      "You have loaded plyr after dplyr - this is likely to cause problems.\n",
      "If you need functions from both plyr and dplyr, please load plyr first, then dplyr:\n",
      "library(plyr); library(dplyr)\n",
      "------------------------------------------------------------------------------\n",
      "\n",
      "Attaching package: ‘plyr’\n",
      "\n",
      "The following objects are masked from ‘package:dplyr’:\n",
      "\n",
      "    arrange, count, desc, failwith, id, mutate, rename, summarise,\n",
      "    summarize\n",
      "\n"
     ]
    },
    {
     "data": {
      "text/html": [
       "<table>\n",
       "<thead><tr><th></th><th scope=col>res_max</th></tr></thead>\n",
       "<tbody>\n",
       "\t<tr><th scope=row>2016-01-04</th><td>15.9855</td></tr>\n",
       "\t<tr><th scope=row>2016-01-11</th><td>15.8265</td></tr>\n",
       "\t<tr><th scope=row>2016-01-18</th><td>15.6940</td></tr>\n",
       "\t<tr><th scope=row>2016-01-25</th><td>15.0405</td></tr>\n",
       "\t<tr><th scope=row>2016-02-01</th><td>16.2328</td></tr>\n",
       "\t<tr><th scope=row>2016-02-15</th><td>16.2946</td></tr>\n",
       "\t<tr><th scope=row>2016-03-07</th><td>14.9875</td></tr>\n",
       "\t<tr><th scope=row>2016-03-14</th><td>15.9236</td></tr>\n",
       "\t<tr><th scope=row>2016-03-21</th><td>16.0296</td></tr>\n",
       "\t<tr><th scope=row>2016-03-28</th><td>16.0561</td></tr>\n",
       "\t<tr><th scope=row>2016-04-04</th><td>16.0473</td></tr>\n",
       "\t<tr><th scope=row>2016-04-11</th><td>15.8000</td></tr>\n",
       "\t<tr><th scope=row>2016-04-18</th><td>16.1091</td></tr>\n",
       "\t<tr><th scope=row>2016-04-25</th><td>15.8265</td></tr>\n",
       "\t<tr><th scope=row>2016-05-02</th><td>16.0031</td></tr>\n",
       "\t<tr><th scope=row>2016-05-09</th><td>15.4644</td></tr>\n",
       "\t<tr><th scope=row>2016-05-16</th><td>15.5086</td></tr>\n",
       "\t<tr><th scope=row>2016-05-23</th><td>15.6675</td></tr>\n",
       "\t<tr><th scope=row>2016-05-30</th><td>16.1533</td></tr>\n",
       "\t<tr><th scope=row>2016-06-06</th><td>15.9148</td></tr>\n",
       "\t<tr><th scope=row>2016-06-13</th><td>15.7205</td></tr>\n",
       "\t<tr><th scope=row>2016-06-20</th><td>15.8000</td></tr>\n",
       "\t<tr><th scope=row>2016-06-27</th><td>15.9200</td></tr>\n",
       "\t<tr><th scope=row>2016-07-04</th><td>15.9300</td></tr>\n",
       "\t<tr><th scope=row>2016-07-11</th><td>15.7900</td></tr>\n",
       "\t<tr><th scope=row>2016-07-18</th><td>15.8300</td></tr>\n",
       "\t<tr><th scope=row>2016-07-25</th><td>15.8700</td></tr>\n",
       "\t<tr><th scope=row>2016-08-01</th><td>15.8000</td></tr>\n",
       "\t<tr><th scope=row>2016-08-08</th><td>16.3600</td></tr>\n",
       "\t<tr><th scope=row>2016-08-15</th><td>16.9400</td></tr>\n",
       "\t<tr><th scope=row>...</th><td>...</td></tr>\n",
       "\t<tr><th scope=row>2016-10-17</th><td>16.34</td></tr>\n",
       "\t<tr><th scope=row>2016-10-24</th><td>16.47</td></tr>\n",
       "\t<tr><th scope=row>2016-10-31</th><td>16.40</td></tr>\n",
       "\t<tr><th scope=row>2016-11-07</th><td>16.59</td></tr>\n",
       "\t<tr><th scope=row>2016-11-14</th><td>16.60</td></tr>\n",
       "\t<tr><th scope=row>2016-11-21</th><td>17.09</td></tr>\n",
       "\t<tr><th scope=row>2016-11-28</th><td>17.26</td></tr>\n",
       "\t<tr><th scope=row>2016-12-05</th><td>17.34</td></tr>\n",
       "\t<tr><th scope=row>2016-12-12</th><td>17.49</td></tr>\n",
       "\t<tr><th scope=row>2016-12-19</th><td>16.52</td></tr>\n",
       "\t<tr><th scope=row>2016-12-26</th><td>16.25</td></tr>\n",
       "\t<tr><th scope=row>2017-01-02</th><td>16.33</td></tr>\n",
       "\t<tr><th scope=row>2017-01-09</th><td>16.27</td></tr>\n",
       "\t<tr><th scope=row>2017-01-16</th><td>16.60</td></tr>\n",
       "\t<tr><th scope=row>2017-01-23</th><td>16.74</td></tr>\n",
       "\t<tr><th scope=row>2017-01-30</th><td>16.63</td></tr>\n",
       "\t<tr><th scope=row>2017-02-06</th><td>16.78</td></tr>\n",
       "\t<tr><th scope=row>2017-02-13</th><td>16.85</td></tr>\n",
       "\t<tr><th scope=row>2017-02-20</th><td>16.91</td></tr>\n",
       "\t<tr><th scope=row>2017-02-27</th><td>16.59</td></tr>\n",
       "\t<tr><th scope=row>2017-03-06</th><td>16.43</td></tr>\n",
       "\t<tr><th scope=row>2017-03-13</th><td>16.34</td></tr>\n",
       "\t<tr><th scope=row>2017-03-20</th><td>16.14</td></tr>\n",
       "\t<tr><th scope=row>2017-03-27</th><td>16.04</td></tr>\n",
       "\t<tr><th scope=row>2017-04-03</th><td>16.16</td></tr>\n",
       "\t<tr><th scope=row>2017-04-10</th><td>15.97</td></tr>\n",
       "\t<tr><th scope=row>2017-04-17</th><td>15.56</td></tr>\n",
       "\t<tr><th scope=row>2017-04-24</th><td>15.21</td></tr>\n",
       "\t<tr><th scope=row>2017-05-01</th><td>15.16</td></tr>\n",
       "\t<tr><th scope=row>2017-05-08</th><td>14.86</td></tr>\n",
       "</tbody>\n",
       "</table>\n"
      ],
      "text/latex": [
       "\\begin{tabular}{r|l}\n",
       "  & res\\_max\\\\\n",
       "\\hline\n",
       "\t2016-01-04 & 15.9855\\\\\n",
       "\t2016-01-11 & 15.8265\\\\\n",
       "\t2016-01-18 & 15.6940\\\\\n",
       "\t2016-01-25 & 15.0405\\\\\n",
       "\t2016-02-01 & 16.2328\\\\\n",
       "\t2016-02-15 & 16.2946\\\\\n",
       "\t2016-03-07 & 14.9875\\\\\n",
       "\t2016-03-14 & 15.9236\\\\\n",
       "\t2016-03-21 & 16.0296\\\\\n",
       "\t2016-03-28 & 16.0561\\\\\n",
       "\t2016-04-04 & 16.0473\\\\\n",
       "\t2016-04-11 & 15.8000\\\\\n",
       "\t2016-04-18 & 16.1091\\\\\n",
       "\t2016-04-25 & 15.8265\\\\\n",
       "\t2016-05-02 & 16.0031\\\\\n",
       "\t2016-05-09 & 15.4644\\\\\n",
       "\t2016-05-16 & 15.5086\\\\\n",
       "\t2016-05-23 & 15.6675\\\\\n",
       "\t2016-05-30 & 16.1533\\\\\n",
       "\t2016-06-06 & 15.9148\\\\\n",
       "\t2016-06-13 & 15.7205\\\\\n",
       "\t2016-06-20 & 15.8000\\\\\n",
       "\t2016-06-27 & 15.9200\\\\\n",
       "\t2016-07-04 & 15.9300\\\\\n",
       "\t2016-07-11 & 15.7900\\\\\n",
       "\t2016-07-18 & 15.8300\\\\\n",
       "\t2016-07-25 & 15.8700\\\\\n",
       "\t2016-08-01 & 15.8000\\\\\n",
       "\t2016-08-08 & 16.3600\\\\\n",
       "\t2016-08-15 & 16.9400\\\\\n",
       "\t... & ...\\\\\n",
       "\t2016-10-17 & 16.34\\\\\n",
       "\t2016-10-24 & 16.47\\\\\n",
       "\t2016-10-31 & 16.40\\\\\n",
       "\t2016-11-07 & 16.59\\\\\n",
       "\t2016-11-14 & 16.60\\\\\n",
       "\t2016-11-21 & 17.09\\\\\n",
       "\t2016-11-28 & 17.26\\\\\n",
       "\t2016-12-05 & 17.34\\\\\n",
       "\t2016-12-12 & 17.49\\\\\n",
       "\t2016-12-19 & 16.52\\\\\n",
       "\t2016-12-26 & 16.25\\\\\n",
       "\t2017-01-02 & 16.33\\\\\n",
       "\t2017-01-09 & 16.27\\\\\n",
       "\t2017-01-16 & 16.60\\\\\n",
       "\t2017-01-23 & 16.74\\\\\n",
       "\t2017-01-30 & 16.63\\\\\n",
       "\t2017-02-06 & 16.78\\\\\n",
       "\t2017-02-13 & 16.85\\\\\n",
       "\t2017-02-20 & 16.91\\\\\n",
       "\t2017-02-27 & 16.59\\\\\n",
       "\t2017-03-06 & 16.43\\\\\n",
       "\t2017-03-13 & 16.34\\\\\n",
       "\t2017-03-20 & 16.14\\\\\n",
       "\t2017-03-27 & 16.04\\\\\n",
       "\t2017-04-03 & 16.16\\\\\n",
       "\t2017-04-10 & 15.97\\\\\n",
       "\t2017-04-17 & 15.56\\\\\n",
       "\t2017-04-24 & 15.21\\\\\n",
       "\t2017-05-01 & 15.16\\\\\n",
       "\t2017-05-08 & 14.86\\\\\n",
       "\\end{tabular}\n"
      ],
      "text/markdown": [
       "\n",
       "| <!--/--> | res_max | \n",
       "|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|\n",
       "| 2016-01-04 | 15.9855 | \n",
       "| 2016-01-11 | 15.8265 | \n",
       "| 2016-01-18 | 15.6940 | \n",
       "| 2016-01-25 | 15.0405 | \n",
       "| 2016-02-01 | 16.2328 | \n",
       "| 2016-02-15 | 16.2946 | \n",
       "| 2016-03-07 | 14.9875 | \n",
       "| 2016-03-14 | 15.9236 | \n",
       "| 2016-03-21 | 16.0296 | \n",
       "| 2016-03-28 | 16.0561 | \n",
       "| 2016-04-04 | 16.0473 | \n",
       "| 2016-04-11 | 15.8000 | \n",
       "| 2016-04-18 | 16.1091 | \n",
       "| 2016-04-25 | 15.8265 | \n",
       "| 2016-05-02 | 16.0031 | \n",
       "| 2016-05-09 | 15.4644 | \n",
       "| 2016-05-16 | 15.5086 | \n",
       "| 2016-05-23 | 15.6675 | \n",
       "| 2016-05-30 | 16.1533 | \n",
       "| 2016-06-06 | 15.9148 | \n",
       "| 2016-06-13 | 15.7205 | \n",
       "| 2016-06-20 | 15.8000 | \n",
       "| 2016-06-27 | 15.9200 | \n",
       "| 2016-07-04 | 15.9300 | \n",
       "| 2016-07-11 | 15.7900 | \n",
       "| 2016-07-18 | 15.8300 | \n",
       "| 2016-07-25 | 15.8700 | \n",
       "| 2016-08-01 | 15.8000 | \n",
       "| 2016-08-08 | 16.3600 | \n",
       "| 2016-08-15 | 16.9400 | \n",
       "| ... | ... | \n",
       "| 2016-10-17 | 16.34 | \n",
       "| 2016-10-24 | 16.47 | \n",
       "| 2016-10-31 | 16.40 | \n",
       "| 2016-11-07 | 16.59 | \n",
       "| 2016-11-14 | 16.60 | \n",
       "| 2016-11-21 | 17.09 | \n",
       "| 2016-11-28 | 17.26 | \n",
       "| 2016-12-05 | 17.34 | \n",
       "| 2016-12-12 | 17.49 | \n",
       "| 2016-12-19 | 16.52 | \n",
       "| 2016-12-26 | 16.25 | \n",
       "| 2017-01-02 | 16.33 | \n",
       "| 2017-01-09 | 16.27 | \n",
       "| 2017-01-16 | 16.60 | \n",
       "| 2017-01-23 | 16.74 | \n",
       "| 2017-01-30 | 16.63 | \n",
       "| 2017-02-06 | 16.78 | \n",
       "| 2017-02-13 | 16.85 | \n",
       "| 2017-02-20 | 16.91 | \n",
       "| 2017-02-27 | 16.59 | \n",
       "| 2017-03-06 | 16.43 | \n",
       "| 2017-03-13 | 16.34 | \n",
       "| 2017-03-20 | 16.14 | \n",
       "| 2017-03-27 | 16.04 | \n",
       "| 2017-04-03 | 16.16 | \n",
       "| 2017-04-10 | 15.97 | \n",
       "| 2017-04-17 | 15.56 | \n",
       "| 2017-04-24 | 15.21 | \n",
       "| 2017-05-01 | 15.16 | \n",
       "| 2017-05-08 | 14.86 | \n",
       "\n",
       "\n"
      ],
      "text/plain": [
       "           res_max\n",
       "2016-01-04 15.9855\n",
       "2016-01-11 15.8265\n",
       "2016-01-18 15.6940\n",
       "2016-01-25 15.0405\n",
       "2016-02-01 16.2328\n",
       "2016-02-15 16.2946\n",
       "2016-03-07 14.9875\n",
       "2016-03-14 15.9236\n",
       "2016-03-21 16.0296\n",
       "2016-03-28 16.0561\n",
       "2016-04-04 16.0473\n",
       "2016-04-11 15.8000\n",
       "2016-04-18 16.1091\n",
       "2016-04-25 15.8265\n",
       "2016-05-02 16.0031\n",
       "2016-05-09 15.4644\n",
       "2016-05-16 15.5086\n",
       "2016-05-23 15.6675\n",
       "2016-05-30 16.1533\n",
       "2016-06-06 15.9148\n",
       "2016-06-13 15.7205\n",
       "2016-06-20 15.8000\n",
       "2016-06-27 15.9200\n",
       "2016-07-04 15.9300\n",
       "2016-07-11 15.7900\n",
       "2016-07-18 15.8300\n",
       "2016-07-25 15.8700\n",
       "2016-08-01 15.8000\n",
       "2016-08-08 16.3600\n",
       "2016-08-15 16.9400\n",
       "...        ...    \n",
       "2016-10-17 16.34  \n",
       "2016-10-24 16.47  \n",
       "2016-10-31 16.40  \n",
       "2016-11-07 16.59  \n",
       "2016-11-14 16.60  \n",
       "2016-11-21 17.09  \n",
       "2016-11-28 17.26  \n",
       "2016-12-05 17.34  \n",
       "2016-12-12 17.49  \n",
       "2016-12-19 16.52  \n",
       "2016-12-26 16.25  \n",
       "2017-01-02 16.33  \n",
       "2017-01-09 16.27  \n",
       "2017-01-16 16.60  \n",
       "2017-01-23 16.74  \n",
       "2017-01-30 16.63  \n",
       "2017-02-06 16.78  \n",
       "2017-02-13 16.85  \n",
       "2017-02-20 16.91  \n",
       "2017-02-27 16.59  \n",
       "2017-03-06 16.43  \n",
       "2017-03-13 16.34  \n",
       "2017-03-20 16.14  \n",
       "2017-03-27 16.04  \n",
       "2017-04-03 16.16  \n",
       "2017-04-10 15.97  \n",
       "2017-04-17 15.56  \n",
       "2017-04-24 15.21  \n",
       "2017-05-01 15.16  \n",
       "2017-05-08 14.86  "
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "library(plyr)\n",
    "\n",
    "res <- dlply(df,.(cut(日期,\"1 week\")),\"[\")\n",
    "res_max <- sapply(res,function(n)max(n$`收盘价(元)`),simplify=TRUE)\n",
    "as.data.frame(res_max)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 74.绘制重采样数据与原始数据"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "collapsed": false
   },
   "outputs": [],
   "source": [
    "res %>%\n",
    "  rownames_to_column('date')\n",
    "res$date <- as.Date(res$date)\n",
    "\n",
    "ggplot(df) +\n",
    "  geom_line(aes(日期,`收盘价(元)`),color = 'steelblue',size = 1.2) +\n",
    "  geom_line(data = res, aes(date,res_max),\n",
    "            color = 'orange',size = 1.2)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 75.将数据往后移动5天"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 86,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<table>\n",
       "<thead><tr><th scope=col>﻿代码</th><th scope=col>简称</th><th scope=col>日期</th><th scope=col>前收盘价(元)</th><th scope=col>开盘价(元)</th><th scope=col>最高价(元)</th><th scope=col>最低价(元)</th><th scope=col>收盘价(元)</th><th scope=col>成交量(股)</th><th scope=col>成交金额(元)</th><th scope=col>涨跌(元)</th><th scope=col>涨跌幅(%)</th><th scope=col>均价(元)</th><th scope=col>换手率(%)</th><th scope=col>A股流通市值(元)</th><th scope=col>总市值(元)</th><th scope=col>A股流通股本(股)</th><th scope=col>市盈率</th></tr></thead>\n",
       "<tbody>\n",
       "\t<tr><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>600000.SH </td><td>浦发银行  </td><td>2016-01-04</td><td>16.1356   </td><td>16.1444   </td><td>16.1444   </td><td>15.4997   </td><td>15.7205   </td><td>42240610  </td><td>754425783 </td><td>-0.4151   </td><td>-2.5725   </td><td>17.8602   </td></tr>\n",
       "\t<tr><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>600000.SH </td><td>浦发银行  </td><td>2016-01-05</td><td>15.7205   </td><td>15.4644   </td><td>15.9501   </td><td>15.3672   </td><td>15.8618   </td><td>58054793  </td><td>1034181474</td><td> 0.1413   </td><td> 0.8989   </td><td>17.8139   </td></tr>\n",
       "\t<tr><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>600000.SH </td><td>浦发银行  </td><td>2016-01-06</td><td>15.8618   </td><td>15.8088   </td><td>16.0208   </td><td>15.6234   </td><td>15.9855   </td><td>46772653  </td><td>838667398 </td><td> 0.1236   </td><td> 0.7795   </td><td>17.9307   </td></tr>\n",
       "\t<tr><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>600000.SH </td><td>浦发银行  </td><td>2016-01-07</td><td>15.9855   </td><td>15.7205   </td><td>15.8088   </td><td>15.3672   </td><td>15.4644   </td><td>11350479  </td><td>199502702 </td><td>-0.5211   </td><td>-3.2597   </td><td>17.5766   </td></tr>\n",
       "\t<tr><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>600000.SH </td><td>浦发银行  </td><td>2016-01-08</td><td>15.4644   </td><td>15.6675   </td><td>15.7912   </td><td>14.9345   </td><td>15.4467   </td><td>71918296  </td><td>1262105060</td><td>-0.0177   </td><td>-0.1142   </td><td>17.5492   </td></tr>\n",
       "\t<tr><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>600000.SH </td><td>浦发银行  </td><td>2016-01-11</td><td>15.4467   </td><td>15.1994   </td><td>15.4114   </td><td>14.9786   </td><td>15.0581   </td><td>90177135  </td><td>1550155933</td><td>-0.3886   </td><td>-2.5157   </td><td>17.1901   </td></tr>\n",
       "\t<tr><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>600000.SH </td><td>浦发银行  </td><td>2016-01-12</td><td>15.0581   </td><td>15.1641   </td><td>15.4732   </td><td>15.0846   </td><td>15.4114   </td><td>55374454  </td><td>964061502 </td><td> 0.3533   </td><td> 2.3460   </td><td>17.4099   </td></tr>\n",
       "\t<tr><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>600000.SH </td><td>浦发银行  </td><td>2016-01-13</td><td>15.4114   </td><td>15.5174   </td><td>15.8088   </td><td>15.3231   </td><td>15.3584   </td><td>47869312  </td><td>843717365 </td><td>-0.0530   </td><td>-0.3438   </td><td>17.6254   </td></tr>\n",
       "\t<tr><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>600000.SH </td><td>浦发银行  </td><td>2016-01-14</td><td>15.3584   </td><td>15.0140   </td><td>15.8883   </td><td>14.9168   </td><td>15.8265   </td><td>54838833  </td><td>966117848 </td><td> 0.4681   </td><td> 3.0477   </td><td>17.6174   </td></tr>\n",
       "\t<tr><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>600000.SH </td><td>浦发银行  </td><td>2016-01-15</td><td>15.8265   </td><td>15.7205   </td><td>16.0296   </td><td>15.4732   </td><td>15.5262   </td><td>46723139  </td><td>836146426 </td><td>-0.3003   </td><td>-1.8973   </td><td>17.8958   </td></tr>\n",
       "\t<tr><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>600000.SH </td><td>浦发银行  </td><td>2016-01-18</td><td>15.5262   </td><td>15.3937   </td><td>15.8883   </td><td>15.2966   </td><td>15.6145   </td><td>32729006  </td><td>583291559 </td><td> 0.0883   </td><td> 0.5688   </td><td>17.8219   </td></tr>\n",
       "\t<tr><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>600000.SH </td><td>浦发银行  </td><td>2016-01-19</td><td>15.6145   </td><td>15.7029   </td><td>15.7912   </td><td>15.4556   </td><td>15.6940   </td><td>29807159  </td><td>527753175 </td><td> 0.0795   </td><td> 0.5090   </td><td>17.7056   </td></tr>\n",
       "\t<tr><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>600000.SH </td><td>浦发银行  </td><td>2016-01-20</td><td>15.6940   </td><td>15.5527   </td><td>15.6322   </td><td>15.0846   </td><td>15.2348   </td><td>35968636  </td><td>623546924 </td><td>-0.4593   </td><td>-2.9263   </td><td>17.3359   </td></tr>\n",
       "\t<tr><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>600000.SH </td><td>浦发银行  </td><td>2016-01-21</td><td>15.2348   </td><td>15.2083   </td><td>15.4202   </td><td>14.5724   </td><td>14.6430   </td><td>34197115  </td><td>582845476 </td><td>-0.5917   </td><td>-3.8841   </td><td>17.0437   </td></tr>\n",
       "\t<tr><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>600000.SH </td><td>浦发银行  </td><td>2016-01-22</td><td>14.6430   </td><td>14.8727   </td><td>15.1111   </td><td>14.5636   </td><td>15.0316   </td><td>42007318  </td><td>708179241 </td><td> 0.3886   </td><td> 2.6538   </td><td>16.8585   </td></tr>\n",
       "\t<tr><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>600000.SH </td><td>浦发银行  </td><td>2016-01-25</td><td>15.0316   </td><td>15.0140   </td><td>15.1641   </td><td>14.7667   </td><td>15.0405   </td><td>23558971  </td><td>400445071 </td><td> 0.0088   </td><td> 0.0588   </td><td>16.9976   </td></tr>\n",
       "\t<tr><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>600000.SH </td><td>浦发银行  </td><td>2016-01-26</td><td>15.0405   </td><td>14.9786   </td><td>15.1376   </td><td>14.4841   </td><td>14.7137   </td><td>38279766  </td><td>643611762 </td><td>-0.3268   </td><td>-2.1726   </td><td>16.8134   </td></tr>\n",
       "\t<tr><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>600000.SH </td><td>浦发银行  </td><td>2016-01-27</td><td>14.7137   </td><td>14.7932   </td><td>14.9963   </td><td>14.5812   </td><td>14.7314   </td><td>44291307  </td><td>742640743 </td><td> 0.0177   </td><td> 0.1200   </td><td>16.7672   </td></tr>\n",
       "\t<tr><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>600000.SH </td><td>浦发银行  </td><td>2016-01-28</td><td>14.7314   </td><td>14.8020   </td><td>14.8550   </td><td>14.0248   </td><td>14.6430   </td><td>38902180  </td><td>643984171 </td><td>-0.0883   </td><td>-0.5995   </td><td>16.5539   </td></tr>\n",
       "\t<tr><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>600000.SH </td><td>浦发银行  </td><td>2016-01-29</td><td>14.6430   </td><td>14.5901   </td><td>15.0581   </td><td>14.4929   </td><td>14.9257   </td><td>47429000  </td><td>799493381 </td><td> 0.2826   </td><td> 1.9300   </td><td>16.8566   </td></tr>\n",
       "\t<tr><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>600000.SH </td><td>浦发银行  </td><td>2016-02-01</td><td>14.9257   </td><td>15.0051   </td><td>15.0140   </td><td>14.4929   </td><td>14.5724   </td><td>29139596  </td><td>485275132 </td><td>-0.3533   </td><td>-2.3669   </td><td>16.6535   </td></tr>\n",
       "\t<tr><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>600000.SH </td><td>浦发银行  </td><td>2016-02-02</td><td>14.5724   </td><td>14.5724   </td><td>14.9610   </td><td>14.5371   </td><td>14.8020   </td><td>25380981  </td><td>425396889 </td><td> 0.2296   </td><td> 1.5758   </td><td>16.7605   </td></tr>\n",
       "\t<tr><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>600000.SH </td><td>浦发银行  </td><td>2016-02-03</td><td>14.8020   </td><td>14.6607   </td><td>14.7137   </td><td>14.5282   </td><td>14.6695   </td><td>27779183  </td><td>459255616 </td><td>-0.1325   </td><td>-0.8950   </td><td>16.5324   </td></tr>\n",
       "\t<tr><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>600000.SH </td><td>浦发银行  </td><td>2016-02-04</td><td>14.6695   </td><td>14.8727   </td><td>15.2966   </td><td>14.6872   </td><td>15.2789   </td><td>47162860  </td><td>799283799 </td><td> 0.6094   </td><td> 4.1541   </td><td>16.9473   </td></tr>\n",
       "\t<tr><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>600000.SH </td><td>浦发银行  </td><td>2016-02-05</td><td>15.2789   </td><td>15.2259   </td><td>16.2416   </td><td>15.1465   </td><td>16.2328   </td><td>78413454  </td><td>1401156041</td><td> 0.9538   </td><td> 6.2428   </td><td>17.8688   </td></tr>\n",
       "\t<tr><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>600000.SH </td><td>浦发银行  </td><td>2016-02-15</td><td>16.2328   </td><td>15.8795   </td><td>16.3211   </td><td>15.7205   </td><td>16.2946   </td><td>67296317  </td><td>1221398339</td><td> 0.0618   </td><td> 0.3808   </td><td>18.1496   </td></tr>\n",
       "\t<tr><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>600000.SH </td><td>浦发银行  </td><td>2016-03-11</td><td>16.2946   </td><td>15.4644   </td><td>15.4821   </td><td>14.6695   </td><td>14.9875   </td><td>98240322  </td><td>1657158636</td><td>-1.3071   </td><td>-8.0217   </td><td>16.8684   </td></tr>\n",
       "\t<tr><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>600000.SH </td><td>浦发银行  </td><td>2016-03-14</td><td>14.9875   </td><td>14.9080   </td><td>15.4291   </td><td>14.8550   </td><td>14.8903   </td><td>56922239  </td><td>973317374 </td><td>-0.0971   </td><td>-0.6482   </td><td>17.0991   </td></tr>\n",
       "\t<tr><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>600000.SH </td><td>浦发银行  </td><td>2016-03-15</td><td>14.8903   </td><td>14.9698   </td><td>15.1818   </td><td>14.8462   </td><td>15.0316   </td><td>37540932  </td><td>638223050 </td><td> 0.1413   </td><td> 0.9490   </td><td>17.0007   </td></tr>\n",
       "\t<tr><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>600000.SH </td><td>浦发银行  </td><td>2016-03-16</td><td>15.0316   </td><td>14.9433   </td><td>15.9590   </td><td>14.9345   </td><td>15.9236   </td><td>108404378 </td><td>1924212601</td><td> 0.8920   </td><td> 5.9342   </td><td>17.7503   </td></tr>\n",
       "\t<tr><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td></tr>\n",
       "\t<tr><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>600000.SH </td><td>浦发银行  </td><td>2017-03-24</td><td>15.88     </td><td>15.85     </td><td>16.00     </td><td>15.83     </td><td>15.96     </td><td>19902006  </td><td>316984958 </td><td> 0.08     </td><td> 0.5038   </td><td>15.9273   </td></tr>\n",
       "\t<tr><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>600000.SH </td><td>浦发银行  </td><td>2017-03-27</td><td>15.96     </td><td>15.97     </td><td>16.13     </td><td>15.90     </td><td>16.04     </td><td>18997369  </td><td>304990151 </td><td> 0.08     </td><td> 0.5013   </td><td>16.0543   </td></tr>\n",
       "\t<tr><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>600000.SH </td><td>浦发银行  </td><td>2017-03-28</td><td>16.04     </td><td>16.11     </td><td>16.13     </td><td>15.97     </td><td>16.01     </td><td>13212969  </td><td>211750766 </td><td>-0.03     </td><td>-0.1870   </td><td>16.026    </td></tr>\n",
       "\t<tr><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>600000.SH </td><td>浦发银行  </td><td>2017-03-29</td><td>16.01     </td><td>16.01     </td><td>16.11     </td><td>15.80     </td><td>15.87     </td><td>23446792  </td><td>372794465 </td><td>-0.14     </td><td>-0.8745   </td><td>15.8996   </td></tr>\n",
       "\t<tr><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>600000.SH </td><td>浦发银行  </td><td>2017-03-30</td><td>15.87     </td><td>15.88     </td><td>15.90     </td><td>15.72     </td><td>15.81     </td><td>23645144  </td><td>373665115 </td><td>-0.06     </td><td>-0.3781   </td><td>15.803    </td></tr>\n",
       "\t<tr><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>600000.SH </td><td>浦发银行  </td><td>2017-03-31</td><td>15.81     </td><td>15.78     </td><td>16.05     </td><td>15.77     </td><td>16.01     </td><td>24187120  </td><td>385793421 </td><td> 0.20     </td><td> 1.2650   </td><td>15.9504   </td></tr>\n",
       "\t<tr><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>600000.SH </td><td>浦发银行  </td><td>2017-04-05</td><td>16.01     </td><td>16.05     </td><td>16.20     </td><td>15.89     </td><td>16.16     </td><td>31036271  </td><td>499121565 </td><td> 0.15     </td><td> 0.9369   </td><td>16.0819   </td></tr>\n",
       "\t<tr><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>600000.SH </td><td>浦发银行  </td><td>2017-04-06</td><td>16.16     </td><td>16.09     </td><td>16.18     </td><td>16.03     </td><td>16.10     </td><td>22335442  </td><td>359361840 </td><td>-0.06     </td><td>-0.3713   </td><td>16.0893   </td></tr>\n",
       "\t<tr><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>600000.SH </td><td>浦发银行  </td><td>2017-04-07</td><td>16.10     </td><td>16.06     </td><td>16.16     </td><td>16.02     </td><td>16.10     </td><td>20126948  </td><td>323821647 </td><td> 0.00     </td><td> 0.0000   </td><td>16.089    </td></tr>\n",
       "\t<tr><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>600000.SH </td><td>浦发银行  </td><td>2017-04-10</td><td>16.10     </td><td>16.12     </td><td>16.12     </td><td>15.94     </td><td>15.97     </td><td>16154024  </td><td>258662668 </td><td>-0.13     </td><td>-0.8075   </td><td>16.0123   </td></tr>\n",
       "\t<tr><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>600000.SH </td><td>浦发银行  </td><td>2017-04-11</td><td>15.97     </td><td>15.97     </td><td>15.99     </td><td>15.81     </td><td>15.89     </td><td>18611375  </td><td>295381671 </td><td>-0.08     </td><td>-0.5009   </td><td>15.871    </td></tr>\n",
       "\t<tr><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>600000.SH </td><td>浦发银行  </td><td>2017-04-12</td><td>15.89     </td><td>15.88     </td><td>15.96     </td><td>15.75     </td><td>15.89     </td><td>22210541  </td><td>352357729 </td><td> 0.00     </td><td> 0.0000   </td><td>15.8644   </td></tr>\n",
       "\t<tr><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>600000.SH </td><td>浦发银行  </td><td>2017-04-13</td><td>15.89     </td><td>15.88     </td><td>15.89     </td><td>15.73     </td><td>15.75     </td><td>23426650  </td><td>369388222 </td><td>-0.14     </td><td>-0.8811   </td><td>15.7679   </td></tr>\n",
       "\t<tr><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>600000.SH </td><td>浦发银行  </td><td>2017-04-14</td><td>15.75     </td><td>15.76     </td><td>15.78     </td><td>15.42     </td><td>15.51     </td><td>40156553  </td><td>625510632 </td><td>-0.24     </td><td>-1.5238   </td><td>15.5768   </td></tr>\n",
       "\t<tr><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>600000.SH </td><td>浦发银行  </td><td>2017-04-17</td><td>15.51     </td><td>15.53     </td><td>15.60     </td><td>15.30     </td><td>15.56     </td><td>36739448  </td><td>566536789 </td><td> 0.05     </td><td> 0.3224   </td><td>15.4204   </td></tr>\n",
       "\t<tr><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>600000.SH </td><td>浦发银行  </td><td>2017-04-18</td><td>15.56     </td><td>15.50     </td><td>15.52     </td><td>15.30     </td><td>15.30     </td><td>22889980  </td><td>351624622 </td><td>-0.26     </td><td>-1.6710   </td><td>15.3615   </td></tr>\n",
       "\t<tr><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>600000.SH </td><td>浦发银行  </td><td>2017-04-19</td><td>15.30     </td><td>15.25     </td><td>15.27     </td><td>15.11     </td><td>15.11     </td><td>24455407  </td><td>371021507 </td><td>-0.19     </td><td>-1.2418   </td><td>15.1713   </td></tr>\n",
       "\t<tr><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>600000.SH </td><td>浦发银行  </td><td>2017-04-20</td><td>15.11     </td><td>15.12     </td><td>15.14     </td><td>14.90     </td><td>14.91     </td><td>41061406  </td><td>614436383 </td><td>-0.20     </td><td>-1.3236   </td><td>14.9638   </td></tr>\n",
       "\t<tr><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>600000.SH </td><td>浦发银行  </td><td>2017-04-21</td><td>14.91     </td><td>14.92     </td><td>15.07     </td><td>14.85     </td><td>15.05     </td><td>22688358  </td><td>340453104 </td><td> 0.14     </td><td> 0.9390   </td><td>15.0056   </td></tr>\n",
       "\t<tr><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>600000.SH </td><td>浦发银行  </td><td>2017-04-24</td><td>15.05     </td><td>15.05     </td><td>15.11     </td><td>14.91     </td><td>15.00     </td><td>17627803  </td><td>264649933 </td><td>-0.05     </td><td>-0.3322   </td><td>15.0132   </td></tr>\n",
       "\t<tr><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>600000.SH </td><td>浦发银行  </td><td>2017-04-25</td><td>15.00     </td><td>15.02     </td><td>15.10     </td><td>14.99     </td><td>15.05     </td><td>12975919  </td><td>195296862 </td><td> 0.05     </td><td> 0.3333   </td><td>15.0507   </td></tr>\n",
       "\t<tr><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>600000.SH </td><td>浦发银行  </td><td>2017-04-26</td><td>15.05     </td><td>15.06     </td><td>15.11     </td><td>15.00     </td><td>15.05     </td><td>14939871  </td><td>225022668 </td><td> 0.00     </td><td> 0.0000   </td><td>15.0619   </td></tr>\n",
       "\t<tr><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>600000.SH </td><td>浦发银行  </td><td>2017-04-27</td><td>15.05     </td><td>15.05     </td><td>15.25     </td><td>15.03     </td><td>15.21     </td><td>22887645  </td><td>345791526 </td><td> 0.16     </td><td> 1.0631   </td><td>15.1082   </td></tr>\n",
       "\t<tr><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>600000.SH </td><td>浦发银行  </td><td>2017-04-28</td><td>15.21     </td><td>15.15     </td><td>15.22     </td><td>15.08     </td><td>15.21     </td><td>15718509  </td><td>238419161 </td><td> 0.00     </td><td> 0.0000   </td><td>15.1681   </td></tr>\n",
       "\t<tr><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>600000.SH </td><td>浦发银行  </td><td>2017-05-02</td><td>15.21     </td><td>15.21     </td><td>15.22     </td><td>15.13     </td><td>15.16     </td><td>12607509  </td><td>191225527 </td><td>-0.05     </td><td>-0.3287   </td><td>15.1676   </td></tr>\n",
       "\t<tr><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>600000.SH </td><td>浦发银行  </td><td>2017-05-03</td><td>15.16     </td><td>15.16     </td><td>15.16     </td><td>15.05     </td><td>15.08     </td><td>14247943  </td><td>215130847 </td><td>-0.08     </td><td>-0.5277   </td><td>15.0991   </td></tr>\n",
       "\t<tr><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>600000.SH </td><td>浦发银行  </td><td>2017-05-04</td><td>15.08     </td><td>15.07     </td><td>15.07     </td><td>14.90     </td><td>14.98     </td><td>19477788  </td><td>291839737 </td><td>-0.10     </td><td>-0.6631   </td><td>14.9832   </td></tr>\n",
       "\t<tr><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>600000.SH </td><td>浦发银行  </td><td>2017-05-05</td><td>14.98     </td><td>14.95     </td><td>14.98     </td><td>14.52     </td><td>14.92     </td><td>40194577  </td><td>592160198 </td><td>-0.06     </td><td>-0.4005   </td><td>14.7323   </td></tr>\n",
       "\t<tr><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>600000.SH </td><td>浦发银行  </td><td>2017-05-08</td><td>14.92     </td><td>14.78     </td><td>14.90     </td><td>14.51     </td><td>14.86     </td><td>43568576  </td><td>638781010 </td><td>-0.06     </td><td>-0.4021   </td><td>14.6615   </td></tr>\n",
       "\t<tr><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>NA        </td><td>600000.SH </td><td>浦发银行  </td><td>2017-05-09</td><td>14.86     </td><td>14.69     </td><td>14.84     </td><td>14.66     </td><td>14.76     </td><td>19225492  </td><td>283864640 </td><td>-0.10     </td><td>-0.6729   </td><td>14.765    </td></tr>\n",
       "</tbody>\n",
       "</table>\n"
      ],
      "text/latex": [
       "\\begin{tabular}{r|llllllllllllllllll}\n",
       " ﻿代码 & 简称 & 日期 & 前收盘价(元) & 开盘价(元) & 最高价(元) & 最低价(元) & 收盘价(元) & 成交量(股) & 成交金额(元) & 涨跌(元) & 涨跌幅(\\%) & 均价(元) & 换手率(\\%) & A股流通市值(元) & 总市值(元) & A股流通股本(股) & 市盈率\\\\\n",
       "\\hline\n",
       "\t NA         & NA         & NA         & NA         & NA         & 600000.SH  & 浦发银行   & 2016-01-04 & 16.1356    & 16.1444    & 16.1444    & 15.4997    & 15.7205    & 42240610   & 754425783  & -0.4151    & -2.5725    & 17.8602   \\\\\n",
       "\t NA         & NA         & NA         & NA         & NA         & 600000.SH  & 浦发银行   & 2016-01-05 & 15.7205    & 15.4644    & 15.9501    & 15.3672    & 15.8618    & 58054793   & 1034181474 &  0.1413    &  0.8989    & 17.8139   \\\\\n",
       "\t NA         & NA         & NA         & NA         & NA         & 600000.SH  & 浦发银行   & 2016-01-06 & 15.8618    & 15.8088    & 16.0208    & 15.6234    & 15.9855    & 46772653   & 838667398  &  0.1236    &  0.7795    & 17.9307   \\\\\n",
       "\t NA         & NA         & NA         & NA         & NA         & 600000.SH  & 浦发银行   & 2016-01-07 & 15.9855    & 15.7205    & 15.8088    & 15.3672    & 15.4644    & 11350479   & 199502702  & -0.5211    & -3.2597    & 17.5766   \\\\\n",
       "\t NA         & NA         & NA         & NA         & NA         & 600000.SH  & 浦发银行   & 2016-01-08 & 15.4644    & 15.6675    & 15.7912    & 14.9345    & 15.4467    & 71918296   & 1262105060 & -0.0177    & -0.1142    & 17.5492   \\\\\n",
       "\t NA         & NA         & NA         & NA         & NA         & 600000.SH  & 浦发银行   & 2016-01-11 & 15.4467    & 15.1994    & 15.4114    & 14.9786    & 15.0581    & 90177135   & 1550155933 & -0.3886    & -2.5157    & 17.1901   \\\\\n",
       "\t NA         & NA         & NA         & NA         & NA         & 600000.SH  & 浦发银行   & 2016-01-12 & 15.0581    & 15.1641    & 15.4732    & 15.0846    & 15.4114    & 55374454   & 964061502  &  0.3533    &  2.3460    & 17.4099   \\\\\n",
       "\t NA         & NA         & NA         & NA         & NA         & 600000.SH  & 浦发银行   & 2016-01-13 & 15.4114    & 15.5174    & 15.8088    & 15.3231    & 15.3584    & 47869312   & 843717365  & -0.0530    & -0.3438    & 17.6254   \\\\\n",
       "\t NA         & NA         & NA         & NA         & NA         & 600000.SH  & 浦发银行   & 2016-01-14 & 15.3584    & 15.0140    & 15.8883    & 14.9168    & 15.8265    & 54838833   & 966117848  &  0.4681    &  3.0477    & 17.6174   \\\\\n",
       "\t NA         & NA         & NA         & NA         & NA         & 600000.SH  & 浦发银行   & 2016-01-15 & 15.8265    & 15.7205    & 16.0296    & 15.4732    & 15.5262    & 46723139   & 836146426  & -0.3003    & -1.8973    & 17.8958   \\\\\n",
       "\t NA         & NA         & NA         & NA         & NA         & 600000.SH  & 浦发银行   & 2016-01-18 & 15.5262    & 15.3937    & 15.8883    & 15.2966    & 15.6145    & 32729006   & 583291559  &  0.0883    &  0.5688    & 17.8219   \\\\\n",
       "\t NA         & NA         & NA         & NA         & NA         & 600000.SH  & 浦发银行   & 2016-01-19 & 15.6145    & 15.7029    & 15.7912    & 15.4556    & 15.6940    & 29807159   & 527753175  &  0.0795    &  0.5090    & 17.7056   \\\\\n",
       "\t NA         & NA         & NA         & NA         & NA         & 600000.SH  & 浦发银行   & 2016-01-20 & 15.6940    & 15.5527    & 15.6322    & 15.0846    & 15.2348    & 35968636   & 623546924  & -0.4593    & -2.9263    & 17.3359   \\\\\n",
       "\t NA         & NA         & NA         & NA         & NA         & 600000.SH  & 浦发银行   & 2016-01-21 & 15.2348    & 15.2083    & 15.4202    & 14.5724    & 14.6430    & 34197115   & 582845476  & -0.5917    & -3.8841    & 17.0437   \\\\\n",
       "\t NA         & NA         & NA         & NA         & NA         & 600000.SH  & 浦发银行   & 2016-01-22 & 14.6430    & 14.8727    & 15.1111    & 14.5636    & 15.0316    & 42007318   & 708179241  &  0.3886    &  2.6538    & 16.8585   \\\\\n",
       "\t NA         & NA         & NA         & NA         & NA         & 600000.SH  & 浦发银行   & 2016-01-25 & 15.0316    & 15.0140    & 15.1641    & 14.7667    & 15.0405    & 23558971   & 400445071  &  0.0088    &  0.0588    & 16.9976   \\\\\n",
       "\t NA         & NA         & NA         & NA         & NA         & 600000.SH  & 浦发银行   & 2016-01-26 & 15.0405    & 14.9786    & 15.1376    & 14.4841    & 14.7137    & 38279766   & 643611762  & -0.3268    & -2.1726    & 16.8134   \\\\\n",
       "\t NA         & NA         & NA         & NA         & NA         & 600000.SH  & 浦发银行   & 2016-01-27 & 14.7137    & 14.7932    & 14.9963    & 14.5812    & 14.7314    & 44291307   & 742640743  &  0.0177    &  0.1200    & 16.7672   \\\\\n",
       "\t NA         & NA         & NA         & NA         & NA         & 600000.SH  & 浦发银行   & 2016-01-28 & 14.7314    & 14.8020    & 14.8550    & 14.0248    & 14.6430    & 38902180   & 643984171  & -0.0883    & -0.5995    & 16.5539   \\\\\n",
       "\t NA         & NA         & NA         & NA         & NA         & 600000.SH  & 浦发银行   & 2016-01-29 & 14.6430    & 14.5901    & 15.0581    & 14.4929    & 14.9257    & 47429000   & 799493381  &  0.2826    &  1.9300    & 16.8566   \\\\\n",
       "\t NA         & NA         & NA         & NA         & NA         & 600000.SH  & 浦发银行   & 2016-02-01 & 14.9257    & 15.0051    & 15.0140    & 14.4929    & 14.5724    & 29139596   & 485275132  & -0.3533    & -2.3669    & 16.6535   \\\\\n",
       "\t NA         & NA         & NA         & NA         & NA         & 600000.SH  & 浦发银行   & 2016-02-02 & 14.5724    & 14.5724    & 14.9610    & 14.5371    & 14.8020    & 25380981   & 425396889  &  0.2296    &  1.5758    & 16.7605   \\\\\n",
       "\t NA         & NA         & NA         & NA         & NA         & 600000.SH  & 浦发银行   & 2016-02-03 & 14.8020    & 14.6607    & 14.7137    & 14.5282    & 14.6695    & 27779183   & 459255616  & -0.1325    & -0.8950    & 16.5324   \\\\\n",
       "\t NA         & NA         & NA         & NA         & NA         & 600000.SH  & 浦发银行   & 2016-02-04 & 14.6695    & 14.8727    & 15.2966    & 14.6872    & 15.2789    & 47162860   & 799283799  &  0.6094    &  4.1541    & 16.9473   \\\\\n",
       "\t NA         & NA         & NA         & NA         & NA         & 600000.SH  & 浦发银行   & 2016-02-05 & 15.2789    & 15.2259    & 16.2416    & 15.1465    & 16.2328    & 78413454   & 1401156041 &  0.9538    &  6.2428    & 17.8688   \\\\\n",
       "\t NA         & NA         & NA         & NA         & NA         & 600000.SH  & 浦发银行   & 2016-02-15 & 16.2328    & 15.8795    & 16.3211    & 15.7205    & 16.2946    & 67296317   & 1221398339 &  0.0618    &  0.3808    & 18.1496   \\\\\n",
       "\t NA         & NA         & NA         & NA         & NA         & 600000.SH  & 浦发银行   & 2016-03-11 & 16.2946    & 15.4644    & 15.4821    & 14.6695    & 14.9875    & 98240322   & 1657158636 & -1.3071    & -8.0217    & 16.8684   \\\\\n",
       "\t NA         & NA         & NA         & NA         & NA         & 600000.SH  & 浦发银行   & 2016-03-14 & 14.9875    & 14.9080    & 15.4291    & 14.8550    & 14.8903    & 56922239   & 973317374  & -0.0971    & -0.6482    & 17.0991   \\\\\n",
       "\t NA         & NA         & NA         & NA         & NA         & 600000.SH  & 浦发银行   & 2016-03-15 & 14.8903    & 14.9698    & 15.1818    & 14.8462    & 15.0316    & 37540932   & 638223050  &  0.1413    &  0.9490    & 17.0007   \\\\\n",
       "\t NA         & NA         & NA         & NA         & NA         & 600000.SH  & 浦发银行   & 2016-03-16 & 15.0316    & 14.9433    & 15.9590    & 14.9345    & 15.9236    & 108404378  & 1924212601 &  0.8920    &  5.9342    & 17.7503   \\\\\n",
       "\t ... & ... & ... & ... & ... & ... & ... & ... & ... & ... & ... & ... & ... & ... & ... & ... & ... & ...\\\\\n",
       "\t NA         & NA         & NA         & NA         & NA         & 600000.SH  & 浦发银行   & 2017-03-24 & 15.88      & 15.85      & 16.00      & 15.83      & 15.96      & 19902006   & 316984958  &  0.08      &  0.5038    & 15.9273   \\\\\n",
       "\t NA         & NA         & NA         & NA         & NA         & 600000.SH  & 浦发银行   & 2017-03-27 & 15.96      & 15.97      & 16.13      & 15.90      & 16.04      & 18997369   & 304990151  &  0.08      &  0.5013    & 16.0543   \\\\\n",
       "\t NA         & NA         & NA         & NA         & NA         & 600000.SH  & 浦发银行   & 2017-03-28 & 16.04      & 16.11      & 16.13      & 15.97      & 16.01      & 13212969   & 211750766  & -0.03      & -0.1870    & 16.026    \\\\\n",
       "\t NA         & NA         & NA         & NA         & NA         & 600000.SH  & 浦发银行   & 2017-03-29 & 16.01      & 16.01      & 16.11      & 15.80      & 15.87      & 23446792   & 372794465  & -0.14      & -0.8745    & 15.8996   \\\\\n",
       "\t NA         & NA         & NA         & NA         & NA         & 600000.SH  & 浦发银行   & 2017-03-30 & 15.87      & 15.88      & 15.90      & 15.72      & 15.81      & 23645144   & 373665115  & -0.06      & -0.3781    & 15.803    \\\\\n",
       "\t NA         & NA         & NA         & NA         & NA         & 600000.SH  & 浦发银行   & 2017-03-31 & 15.81      & 15.78      & 16.05      & 15.77      & 16.01      & 24187120   & 385793421  &  0.20      &  1.2650    & 15.9504   \\\\\n",
       "\t NA         & NA         & NA         & NA         & NA         & 600000.SH  & 浦发银行   & 2017-04-05 & 16.01      & 16.05      & 16.20      & 15.89      & 16.16      & 31036271   & 499121565  &  0.15      &  0.9369    & 16.0819   \\\\\n",
       "\t NA         & NA         & NA         & NA         & NA         & 600000.SH  & 浦发银行   & 2017-04-06 & 16.16      & 16.09      & 16.18      & 16.03      & 16.10      & 22335442   & 359361840  & -0.06      & -0.3713    & 16.0893   \\\\\n",
       "\t NA         & NA         & NA         & NA         & NA         & 600000.SH  & 浦发银行   & 2017-04-07 & 16.10      & 16.06      & 16.16      & 16.02      & 16.10      & 20126948   & 323821647  &  0.00      &  0.0000    & 16.089    \\\\\n",
       "\t NA         & NA         & NA         & NA         & NA         & 600000.SH  & 浦发银行   & 2017-04-10 & 16.10      & 16.12      & 16.12      & 15.94      & 15.97      & 16154024   & 258662668  & -0.13      & -0.8075    & 16.0123   \\\\\n",
       "\t NA         & NA         & NA         & NA         & NA         & 600000.SH  & 浦发银行   & 2017-04-11 & 15.97      & 15.97      & 15.99      & 15.81      & 15.89      & 18611375   & 295381671  & -0.08      & -0.5009    & 15.871    \\\\\n",
       "\t NA         & NA         & NA         & NA         & NA         & 600000.SH  & 浦发银行   & 2017-04-12 & 15.89      & 15.88      & 15.96      & 15.75      & 15.89      & 22210541   & 352357729  &  0.00      &  0.0000    & 15.8644   \\\\\n",
       "\t NA         & NA         & NA         & NA         & NA         & 600000.SH  & 浦发银行   & 2017-04-13 & 15.89      & 15.88      & 15.89      & 15.73      & 15.75      & 23426650   & 369388222  & -0.14      & -0.8811    & 15.7679   \\\\\n",
       "\t NA         & NA         & NA         & NA         & NA         & 600000.SH  & 浦发银行   & 2017-04-14 & 15.75      & 15.76      & 15.78      & 15.42      & 15.51      & 40156553   & 625510632  & -0.24      & -1.5238    & 15.5768   \\\\\n",
       "\t NA         & NA         & NA         & NA         & NA         & 600000.SH  & 浦发银行   & 2017-04-17 & 15.51      & 15.53      & 15.60      & 15.30      & 15.56      & 36739448   & 566536789  &  0.05      &  0.3224    & 15.4204   \\\\\n",
       "\t NA         & NA         & NA         & NA         & NA         & 600000.SH  & 浦发银行   & 2017-04-18 & 15.56      & 15.50      & 15.52      & 15.30      & 15.30      & 22889980   & 351624622  & -0.26      & -1.6710    & 15.3615   \\\\\n",
       "\t NA         & NA         & NA         & NA         & NA         & 600000.SH  & 浦发银行   & 2017-04-19 & 15.30      & 15.25      & 15.27      & 15.11      & 15.11      & 24455407   & 371021507  & -0.19      & -1.2418    & 15.1713   \\\\\n",
       "\t NA         & NA         & NA         & NA         & NA         & 600000.SH  & 浦发银行   & 2017-04-20 & 15.11      & 15.12      & 15.14      & 14.90      & 14.91      & 41061406   & 614436383  & -0.20      & -1.3236    & 14.9638   \\\\\n",
       "\t NA         & NA         & NA         & NA         & NA         & 600000.SH  & 浦发银行   & 2017-04-21 & 14.91      & 14.92      & 15.07      & 14.85      & 15.05      & 22688358   & 340453104  &  0.14      &  0.9390    & 15.0056   \\\\\n",
       "\t NA         & NA         & NA         & NA         & NA         & 600000.SH  & 浦发银行   & 2017-04-24 & 15.05      & 15.05      & 15.11      & 14.91      & 15.00      & 17627803   & 264649933  & -0.05      & -0.3322    & 15.0132   \\\\\n",
       "\t NA         & NA         & NA         & NA         & NA         & 600000.SH  & 浦发银行   & 2017-04-25 & 15.00      & 15.02      & 15.10      & 14.99      & 15.05      & 12975919   & 195296862  &  0.05      &  0.3333    & 15.0507   \\\\\n",
       "\t NA         & NA         & NA         & NA         & NA         & 600000.SH  & 浦发银行   & 2017-04-26 & 15.05      & 15.06      & 15.11      & 15.00      & 15.05      & 14939871   & 225022668  &  0.00      &  0.0000    & 15.0619   \\\\\n",
       "\t NA         & NA         & NA         & NA         & NA         & 600000.SH  & 浦发银行   & 2017-04-27 & 15.05      & 15.05      & 15.25      & 15.03      & 15.21      & 22887645   & 345791526  &  0.16      &  1.0631    & 15.1082   \\\\\n",
       "\t NA         & NA         & NA         & NA         & NA         & 600000.SH  & 浦发银行   & 2017-04-28 & 15.21      & 15.15      & 15.22      & 15.08      & 15.21      & 15718509   & 238419161  &  0.00      &  0.0000    & 15.1681   \\\\\n",
       "\t NA         & NA         & NA         & NA         & NA         & 600000.SH  & 浦发银行   & 2017-05-02 & 15.21      & 15.21      & 15.22      & 15.13      & 15.16      & 12607509   & 191225527  & -0.05      & -0.3287    & 15.1676   \\\\\n",
       "\t NA         & NA         & NA         & NA         & NA         & 600000.SH  & 浦发银行   & 2017-05-03 & 15.16      & 15.16      & 15.16      & 15.05      & 15.08      & 14247943   & 215130847  & -0.08      & -0.5277    & 15.0991   \\\\\n",
       "\t NA         & NA         & NA         & NA         & NA         & 600000.SH  & 浦发银行   & 2017-05-04 & 15.08      & 15.07      & 15.07      & 14.90      & 14.98      & 19477788   & 291839737  & -0.10      & -0.6631    & 14.9832   \\\\\n",
       "\t NA         & NA         & NA         & NA         & NA         & 600000.SH  & 浦发银行   & 2017-05-05 & 14.98      & 14.95      & 14.98      & 14.52      & 14.92      & 40194577   & 592160198  & -0.06      & -0.4005    & 14.7323   \\\\\n",
       "\t NA         & NA         & NA         & NA         & NA         & 600000.SH  & 浦发银行   & 2017-05-08 & 14.92      & 14.78      & 14.90      & 14.51      & 14.86      & 43568576   & 638781010  & -0.06      & -0.4021    & 14.6615   \\\\\n",
       "\t NA         & NA         & NA         & NA         & NA         & 600000.SH  & 浦发银行   & 2017-05-09 & 14.86      & 14.69      & 14.84      & 14.66      & 14.76      & 19225492   & 283864640  & -0.10      & -0.6729    & 14.765    \\\\\n",
       "\\end{tabular}\n"
      ],
      "text/markdown": [
       "\n",
       "﻿代码 | 简称 | 日期 | 前收盘价(元) | 开盘价(元) | 最高价(元) | 最低价(元) | 收盘价(元) | 成交量(股) | 成交金额(元) | 涨跌(元) | 涨跌幅(%) | 均价(元) | 换手率(%) | A股流通市值(元) | 总市值(元) | A股流通股本(股) | 市盈率 | \n",
       "|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|\n",
       "| NA         | NA         | NA         | NA         | NA         | 600000.SH  | 浦发银行   | 2016-01-04 | 16.1356    | 16.1444    | 16.1444    | 15.4997    | 15.7205    | 42240610   | 754425783  | -0.4151    | -2.5725    | 17.8602    | \n",
       "| NA         | NA         | NA         | NA         | NA         | 600000.SH  | 浦发银行   | 2016-01-05 | 15.7205    | 15.4644    | 15.9501    | 15.3672    | 15.8618    | 58054793   | 1034181474 |  0.1413    |  0.8989    | 17.8139    | \n",
       "| NA         | NA         | NA         | NA         | NA         | 600000.SH  | 浦发银行   | 2016-01-06 | 15.8618    | 15.8088    | 16.0208    | 15.6234    | 15.9855    | 46772653   | 838667398  |  0.1236    |  0.7795    | 17.9307    | \n",
       "| NA         | NA         | NA         | NA         | NA         | 600000.SH  | 浦发银行   | 2016-01-07 | 15.9855    | 15.7205    | 15.8088    | 15.3672    | 15.4644    | 11350479   | 199502702  | -0.5211    | -3.2597    | 17.5766    | \n",
       "| NA         | NA         | NA         | NA         | NA         | 600000.SH  | 浦发银行   | 2016-01-08 | 15.4644    | 15.6675    | 15.7912    | 14.9345    | 15.4467    | 71918296   | 1262105060 | -0.0177    | -0.1142    | 17.5492    | \n",
       "| NA         | NA         | NA         | NA         | NA         | 600000.SH  | 浦发银行   | 2016-01-11 | 15.4467    | 15.1994    | 15.4114    | 14.9786    | 15.0581    | 90177135   | 1550155933 | -0.3886    | -2.5157    | 17.1901    | \n",
       "| NA         | NA         | NA         | NA         | NA         | 600000.SH  | 浦发银行   | 2016-01-12 | 15.0581    | 15.1641    | 15.4732    | 15.0846    | 15.4114    | 55374454   | 964061502  |  0.3533    |  2.3460    | 17.4099    | \n",
       "| NA         | NA         | NA         | NA         | NA         | 600000.SH  | 浦发银行   | 2016-01-13 | 15.4114    | 15.5174    | 15.8088    | 15.3231    | 15.3584    | 47869312   | 843717365  | -0.0530    | -0.3438    | 17.6254    | \n",
       "| NA         | NA         | NA         | NA         | NA         | 600000.SH  | 浦发银行   | 2016-01-14 | 15.3584    | 15.0140    | 15.8883    | 14.9168    | 15.8265    | 54838833   | 966117848  |  0.4681    |  3.0477    | 17.6174    | \n",
       "| NA         | NA         | NA         | NA         | NA         | 600000.SH  | 浦发银行   | 2016-01-15 | 15.8265    | 15.7205    | 16.0296    | 15.4732    | 15.5262    | 46723139   | 836146426  | -0.3003    | -1.8973    | 17.8958    | \n",
       "| NA         | NA         | NA         | NA         | NA         | 600000.SH  | 浦发银行   | 2016-01-18 | 15.5262    | 15.3937    | 15.8883    | 15.2966    | 15.6145    | 32729006   | 583291559  |  0.0883    |  0.5688    | 17.8219    | \n",
       "| NA         | NA         | NA         | NA         | NA         | 600000.SH  | 浦发银行   | 2016-01-19 | 15.6145    | 15.7029    | 15.7912    | 15.4556    | 15.6940    | 29807159   | 527753175  |  0.0795    |  0.5090    | 17.7056    | \n",
       "| NA         | NA         | NA         | NA         | NA         | 600000.SH  | 浦发银行   | 2016-01-20 | 15.6940    | 15.5527    | 15.6322    | 15.0846    | 15.2348    | 35968636   | 623546924  | -0.4593    | -2.9263    | 17.3359    | \n",
       "| NA         | NA         | NA         | NA         | NA         | 600000.SH  | 浦发银行   | 2016-01-21 | 15.2348    | 15.2083    | 15.4202    | 14.5724    | 14.6430    | 34197115   | 582845476  | -0.5917    | -3.8841    | 17.0437    | \n",
       "| NA         | NA         | NA         | NA         | NA         | 600000.SH  | 浦发银行   | 2016-01-22 | 14.6430    | 14.8727    | 15.1111    | 14.5636    | 15.0316    | 42007318   | 708179241  |  0.3886    |  2.6538    | 16.8585    | \n",
       "| NA         | NA         | NA         | NA         | NA         | 600000.SH  | 浦发银行   | 2016-01-25 | 15.0316    | 15.0140    | 15.1641    | 14.7667    | 15.0405    | 23558971   | 400445071  |  0.0088    |  0.0588    | 16.9976    | \n",
       "| NA         | NA         | NA         | NA         | NA         | 600000.SH  | 浦发银行   | 2016-01-26 | 15.0405    | 14.9786    | 15.1376    | 14.4841    | 14.7137    | 38279766   | 643611762  | -0.3268    | -2.1726    | 16.8134    | \n",
       "| NA         | NA         | NA         | NA         | NA         | 600000.SH  | 浦发银行   | 2016-01-27 | 14.7137    | 14.7932    | 14.9963    | 14.5812    | 14.7314    | 44291307   | 742640743  |  0.0177    |  0.1200    | 16.7672    | \n",
       "| NA         | NA         | NA         | NA         | NA         | 600000.SH  | 浦发银行   | 2016-01-28 | 14.7314    | 14.8020    | 14.8550    | 14.0248    | 14.6430    | 38902180   | 643984171  | -0.0883    | -0.5995    | 16.5539    | \n",
       "| NA         | NA         | NA         | NA         | NA         | 600000.SH  | 浦发银行   | 2016-01-29 | 14.6430    | 14.5901    | 15.0581    | 14.4929    | 14.9257    | 47429000   | 799493381  |  0.2826    |  1.9300    | 16.8566    | \n",
       "| NA         | NA         | NA         | NA         | NA         | 600000.SH  | 浦发银行   | 2016-02-01 | 14.9257    | 15.0051    | 15.0140    | 14.4929    | 14.5724    | 29139596   | 485275132  | -0.3533    | -2.3669    | 16.6535    | \n",
       "| NA         | NA         | NA         | NA         | NA         | 600000.SH  | 浦发银行   | 2016-02-02 | 14.5724    | 14.5724    | 14.9610    | 14.5371    | 14.8020    | 25380981   | 425396889  |  0.2296    |  1.5758    | 16.7605    | \n",
       "| NA         | NA         | NA         | NA         | NA         | 600000.SH  | 浦发银行   | 2016-02-03 | 14.8020    | 14.6607    | 14.7137    | 14.5282    | 14.6695    | 27779183   | 459255616  | -0.1325    | -0.8950    | 16.5324    | \n",
       "| NA         | NA         | NA         | NA         | NA         | 600000.SH  | 浦发银行   | 2016-02-04 | 14.6695    | 14.8727    | 15.2966    | 14.6872    | 15.2789    | 47162860   | 799283799  |  0.6094    |  4.1541    | 16.9473    | \n",
       "| NA         | NA         | NA         | NA         | NA         | 600000.SH  | 浦发银行   | 2016-02-05 | 15.2789    | 15.2259    | 16.2416    | 15.1465    | 16.2328    | 78413454   | 1401156041 |  0.9538    |  6.2428    | 17.8688    | \n",
       "| NA         | NA         | NA         | NA         | NA         | 600000.SH  | 浦发银行   | 2016-02-15 | 16.2328    | 15.8795    | 16.3211    | 15.7205    | 16.2946    | 67296317   | 1221398339 |  0.0618    |  0.3808    | 18.1496    | \n",
       "| NA         | NA         | NA         | NA         | NA         | 600000.SH  | 浦发银行   | 2016-03-11 | 16.2946    | 15.4644    | 15.4821    | 14.6695    | 14.9875    | 98240322   | 1657158636 | -1.3071    | -8.0217    | 16.8684    | \n",
       "| NA         | NA         | NA         | NA         | NA         | 600000.SH  | 浦发银行   | 2016-03-14 | 14.9875    | 14.9080    | 15.4291    | 14.8550    | 14.8903    | 56922239   | 973317374  | -0.0971    | -0.6482    | 17.0991    | \n",
       "| NA         | NA         | NA         | NA         | NA         | 600000.SH  | 浦发银行   | 2016-03-15 | 14.8903    | 14.9698    | 15.1818    | 14.8462    | 15.0316    | 37540932   | 638223050  |  0.1413    |  0.9490    | 17.0007    | \n",
       "| NA         | NA         | NA         | NA         | NA         | 600000.SH  | 浦发银行   | 2016-03-16 | 15.0316    | 14.9433    | 15.9590    | 14.9345    | 15.9236    | 108404378  | 1924212601 |  0.8920    |  5.9342    | 17.7503    | \n",
       "| ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | \n",
       "| NA         | NA         | NA         | NA         | NA         | 600000.SH  | 浦发银行   | 2017-03-24 | 15.88      | 15.85      | 16.00      | 15.83      | 15.96      | 19902006   | 316984958  |  0.08      |  0.5038    | 15.9273    | \n",
       "| NA         | NA         | NA         | NA         | NA         | 600000.SH  | 浦发银行   | 2017-03-27 | 15.96      | 15.97      | 16.13      | 15.90      | 16.04      | 18997369   | 304990151  |  0.08      |  0.5013    | 16.0543    | \n",
       "| NA         | NA         | NA         | NA         | NA         | 600000.SH  | 浦发银行   | 2017-03-28 | 16.04      | 16.11      | 16.13      | 15.97      | 16.01      | 13212969   | 211750766  | -0.03      | -0.1870    | 16.026     | \n",
       "| NA         | NA         | NA         | NA         | NA         | 600000.SH  | 浦发银行   | 2017-03-29 | 16.01      | 16.01      | 16.11      | 15.80      | 15.87      | 23446792   | 372794465  | -0.14      | -0.8745    | 15.8996    | \n",
       "| NA         | NA         | NA         | NA         | NA         | 600000.SH  | 浦发银行   | 2017-03-30 | 15.87      | 15.88      | 15.90      | 15.72      | 15.81      | 23645144   | 373665115  | -0.06      | -0.3781    | 15.803     | \n",
       "| NA         | NA         | NA         | NA         | NA         | 600000.SH  | 浦发银行   | 2017-03-31 | 15.81      | 15.78      | 16.05      | 15.77      | 16.01      | 24187120   | 385793421  |  0.20      |  1.2650    | 15.9504    | \n",
       "| NA         | NA         | NA         | NA         | NA         | 600000.SH  | 浦发银行   | 2017-04-05 | 16.01      | 16.05      | 16.20      | 15.89      | 16.16      | 31036271   | 499121565  |  0.15      |  0.9369    | 16.0819    | \n",
       "| NA         | NA         | NA         | NA         | NA         | 600000.SH  | 浦发银行   | 2017-04-06 | 16.16      | 16.09      | 16.18      | 16.03      | 16.10      | 22335442   | 359361840  | -0.06      | -0.3713    | 16.0893    | \n",
       "| NA         | NA         | NA         | NA         | NA         | 600000.SH  | 浦发银行   | 2017-04-07 | 16.10      | 16.06      | 16.16      | 16.02      | 16.10      | 20126948   | 323821647  |  0.00      |  0.0000    | 16.089     | \n",
       "| NA         | NA         | NA         | NA         | NA         | 600000.SH  | 浦发银行   | 2017-04-10 | 16.10      | 16.12      | 16.12      | 15.94      | 15.97      | 16154024   | 258662668  | -0.13      | -0.8075    | 16.0123    | \n",
       "| NA         | NA         | NA         | NA         | NA         | 600000.SH  | 浦发银行   | 2017-04-11 | 15.97      | 15.97      | 15.99      | 15.81      | 15.89      | 18611375   | 295381671  | -0.08      | -0.5009    | 15.871     | \n",
       "| NA         | NA         | NA         | NA         | NA         | 600000.SH  | 浦发银行   | 2017-04-12 | 15.89      | 15.88      | 15.96      | 15.75      | 15.89      | 22210541   | 352357729  |  0.00      |  0.0000    | 15.8644    | \n",
       "| NA         | NA         | NA         | NA         | NA         | 600000.SH  | 浦发银行   | 2017-04-13 | 15.89      | 15.88      | 15.89      | 15.73      | 15.75      | 23426650   | 369388222  | -0.14      | -0.8811    | 15.7679    | \n",
       "| NA         | NA         | NA         | NA         | NA         | 600000.SH  | 浦发银行   | 2017-04-14 | 15.75      | 15.76      | 15.78      | 15.42      | 15.51      | 40156553   | 625510632  | -0.24      | -1.5238    | 15.5768    | \n",
       "| NA         | NA         | NA         | NA         | NA         | 600000.SH  | 浦发银行   | 2017-04-17 | 15.51      | 15.53      | 15.60      | 15.30      | 15.56      | 36739448   | 566536789  |  0.05      |  0.3224    | 15.4204    | \n",
       "| NA         | NA         | NA         | NA         | NA         | 600000.SH  | 浦发银行   | 2017-04-18 | 15.56      | 15.50      | 15.52      | 15.30      | 15.30      | 22889980   | 351624622  | -0.26      | -1.6710    | 15.3615    | \n",
       "| NA         | NA         | NA         | NA         | NA         | 600000.SH  | 浦发银行   | 2017-04-19 | 15.30      | 15.25      | 15.27      | 15.11      | 15.11      | 24455407   | 371021507  | -0.19      | -1.2418    | 15.1713    | \n",
       "| NA         | NA         | NA         | NA         | NA         | 600000.SH  | 浦发银行   | 2017-04-20 | 15.11      | 15.12      | 15.14      | 14.90      | 14.91      | 41061406   | 614436383  | -0.20      | -1.3236    | 14.9638    | \n",
       "| NA         | NA         | NA         | NA         | NA         | 600000.SH  | 浦发银行   | 2017-04-21 | 14.91      | 14.92      | 15.07      | 14.85      | 15.05      | 22688358   | 340453104  |  0.14      |  0.9390    | 15.0056    | \n",
       "| NA         | NA         | NA         | NA         | NA         | 600000.SH  | 浦发银行   | 2017-04-24 | 15.05      | 15.05      | 15.11      | 14.91      | 15.00      | 17627803   | 264649933  | -0.05      | -0.3322    | 15.0132    | \n",
       "| NA         | NA         | NA         | NA         | NA         | 600000.SH  | 浦发银行   | 2017-04-25 | 15.00      | 15.02      | 15.10      | 14.99      | 15.05      | 12975919   | 195296862  |  0.05      |  0.3333    | 15.0507    | \n",
       "| NA         | NA         | NA         | NA         | NA         | 600000.SH  | 浦发银行   | 2017-04-26 | 15.05      | 15.06      | 15.11      | 15.00      | 15.05      | 14939871   | 225022668  |  0.00      |  0.0000    | 15.0619    | \n",
       "| NA         | NA         | NA         | NA         | NA         | 600000.SH  | 浦发银行   | 2017-04-27 | 15.05      | 15.05      | 15.25      | 15.03      | 15.21      | 22887645   | 345791526  |  0.16      |  1.0631    | 15.1082    | \n",
       "| NA         | NA         | NA         | NA         | NA         | 600000.SH  | 浦发银行   | 2017-04-28 | 15.21      | 15.15      | 15.22      | 15.08      | 15.21      | 15718509   | 238419161  |  0.00      |  0.0000    | 15.1681    | \n",
       "| NA         | NA         | NA         | NA         | NA         | 600000.SH  | 浦发银行   | 2017-05-02 | 15.21      | 15.21      | 15.22      | 15.13      | 15.16      | 12607509   | 191225527  | -0.05      | -0.3287    | 15.1676    | \n",
       "| NA         | NA         | NA         | NA         | NA         | 600000.SH  | 浦发银行   | 2017-05-03 | 15.16      | 15.16      | 15.16      | 15.05      | 15.08      | 14247943   | 215130847  | -0.08      | -0.5277    | 15.0991    | \n",
       "| NA         | NA         | NA         | NA         | NA         | 600000.SH  | 浦发银行   | 2017-05-04 | 15.08      | 15.07      | 15.07      | 14.90      | 14.98      | 19477788   | 291839737  | -0.10      | -0.6631    | 14.9832    | \n",
       "| NA         | NA         | NA         | NA         | NA         | 600000.SH  | 浦发银行   | 2017-05-05 | 14.98      | 14.95      | 14.98      | 14.52      | 14.92      | 40194577   | 592160198  | -0.06      | -0.4005    | 14.7323    | \n",
       "| NA         | NA         | NA         | NA         | NA         | 600000.SH  | 浦发银行   | 2017-05-08 | 14.92      | 14.78      | 14.90      | 14.51      | 14.86      | 43568576   | 638781010  | -0.06      | -0.4021    | 14.6615    | \n",
       "| NA         | NA         | NA         | NA         | NA         | 600000.SH  | 浦发银行   | 2017-05-09 | 14.86      | 14.69      | 14.84      | 14.66      | 14.76      | 19225492   | 283864640  | -0.10      | -0.6729    | 14.765     | \n",
       "\n",
       "\n"
      ],
      "text/plain": [
       "    ﻿代码 简称 日期 前收盘价(元) 开盘价(元) 最高价(元) 最低价(元) 收盘价(元)\n",
       "1   NA   NA   NA   NA           NA         600000.SH  浦发银行   2016-01-04\n",
       "2   NA   NA   NA   NA           NA         600000.SH  浦发银行   2016-01-05\n",
       "3   NA   NA   NA   NA           NA         600000.SH  浦发银行   2016-01-06\n",
       "4   NA   NA   NA   NA           NA         600000.SH  浦发银行   2016-01-07\n",
       "5   NA   NA   NA   NA           NA         600000.SH  浦发银行   2016-01-08\n",
       "6   NA   NA   NA   NA           NA         600000.SH  浦发银行   2016-01-11\n",
       "7   NA   NA   NA   NA           NA         600000.SH  浦发银行   2016-01-12\n",
       "8   NA   NA   NA   NA           NA         600000.SH  浦发银行   2016-01-13\n",
       "9   NA   NA   NA   NA           NA         600000.SH  浦发银行   2016-01-14\n",
       "10  NA   NA   NA   NA           NA         600000.SH  浦发银行   2016-01-15\n",
       "11  NA   NA   NA   NA           NA         600000.SH  浦发银行   2016-01-18\n",
       "12  NA   NA   NA   NA           NA         600000.SH  浦发银行   2016-01-19\n",
       "13  NA   NA   NA   NA           NA         600000.SH  浦发银行   2016-01-20\n",
       "14  NA   NA   NA   NA           NA         600000.SH  浦发银行   2016-01-21\n",
       "15  NA   NA   NA   NA           NA         600000.SH  浦发银行   2016-01-22\n",
       "16  NA   NA   NA   NA           NA         600000.SH  浦发银行   2016-01-25\n",
       "17  NA   NA   NA   NA           NA         600000.SH  浦发银行   2016-01-26\n",
       "18  NA   NA   NA   NA           NA         600000.SH  浦发银行   2016-01-27\n",
       "19  NA   NA   NA   NA           NA         600000.SH  浦发银行   2016-01-28\n",
       "20  NA   NA   NA   NA           NA         600000.SH  浦发银行   2016-01-29\n",
       "21  NA   NA   NA   NA           NA         600000.SH  浦发银行   2016-02-01\n",
       "22  NA   NA   NA   NA           NA         600000.SH  浦发银行   2016-02-02\n",
       "23  NA   NA   NA   NA           NA         600000.SH  浦发银行   2016-02-03\n",
       "24  NA   NA   NA   NA           NA         600000.SH  浦发银行   2016-02-04\n",
       "25  NA   NA   NA   NA           NA         600000.SH  浦发银行   2016-02-05\n",
       "26  NA   NA   NA   NA           NA         600000.SH  浦发银行   2016-02-15\n",
       "27  NA   NA   NA   NA           NA         600000.SH  浦发银行   2016-03-11\n",
       "28  NA   NA   NA   NA           NA         600000.SH  浦发银行   2016-03-14\n",
       "29  NA   NA   NA   NA           NA         600000.SH  浦发银行   2016-03-15\n",
       "30  NA   NA   NA   NA           NA         600000.SH  浦发银行   2016-03-16\n",
       "... ...  ...  ...  ...          ...        ...        ...        ...       \n",
       "280 NA   NA   NA   NA           NA         600000.SH  浦发银行   2017-03-24\n",
       "281 NA   NA   NA   NA           NA         600000.SH  浦发银行   2017-03-27\n",
       "282 NA   NA   NA   NA           NA         600000.SH  浦发银行   2017-03-28\n",
       "283 NA   NA   NA   NA           NA         600000.SH  浦发银行   2017-03-29\n",
       "284 NA   NA   NA   NA           NA         600000.SH  浦发银行   2017-03-30\n",
       "285 NA   NA   NA   NA           NA         600000.SH  浦发银行   2017-03-31\n",
       "286 NA   NA   NA   NA           NA         600000.SH  浦发银行   2017-04-05\n",
       "287 NA   NA   NA   NA           NA         600000.SH  浦发银行   2017-04-06\n",
       "288 NA   NA   NA   NA           NA         600000.SH  浦发银行   2017-04-07\n",
       "289 NA   NA   NA   NA           NA         600000.SH  浦发银行   2017-04-10\n",
       "290 NA   NA   NA   NA           NA         600000.SH  浦发银行   2017-04-11\n",
       "291 NA   NA   NA   NA           NA         600000.SH  浦发银行   2017-04-12\n",
       "292 NA   NA   NA   NA           NA         600000.SH  浦发银行   2017-04-13\n",
       "293 NA   NA   NA   NA           NA         600000.SH  浦发银行   2017-04-14\n",
       "294 NA   NA   NA   NA           NA         600000.SH  浦发银行   2017-04-17\n",
       "295 NA   NA   NA   NA           NA         600000.SH  浦发银行   2017-04-18\n",
       "296 NA   NA   NA   NA           NA         600000.SH  浦发银行   2017-04-19\n",
       "297 NA   NA   NA   NA           NA         600000.SH  浦发银行   2017-04-20\n",
       "298 NA   NA   NA   NA           NA         600000.SH  浦发银行   2017-04-21\n",
       "299 NA   NA   NA   NA           NA         600000.SH  浦发银行   2017-04-24\n",
       "300 NA   NA   NA   NA           NA         600000.SH  浦发银行   2017-04-25\n",
       "301 NA   NA   NA   NA           NA         600000.SH  浦发银行   2017-04-26\n",
       "302 NA   NA   NA   NA           NA         600000.SH  浦发银行   2017-04-27\n",
       "303 NA   NA   NA   NA           NA         600000.SH  浦发银行   2017-04-28\n",
       "304 NA   NA   NA   NA           NA         600000.SH  浦发银行   2017-05-02\n",
       "305 NA   NA   NA   NA           NA         600000.SH  浦发银行   2017-05-03\n",
       "306 NA   NA   NA   NA           NA         600000.SH  浦发银行   2017-05-04\n",
       "307 NA   NA   NA   NA           NA         600000.SH  浦发银行   2017-05-05\n",
       "308 NA   NA   NA   NA           NA         600000.SH  浦发银行   2017-05-08\n",
       "309 NA   NA   NA   NA           NA         600000.SH  浦发银行   2017-05-09\n",
       "    成交量(股) 成交金额(元) 涨跌(元) 涨跌幅(%) 均价(元) 换手率(%)\n",
       "1   16.1356    16.1444      16.1444  15.4997   15.7205  42240610 \n",
       "2   15.7205    15.4644      15.9501  15.3672   15.8618  58054793 \n",
       "3   15.8618    15.8088      16.0208  15.6234   15.9855  46772653 \n",
       "4   15.9855    15.7205      15.8088  15.3672   15.4644  11350479 \n",
       "5   15.4644    15.6675      15.7912  14.9345   15.4467  71918296 \n",
       "6   15.4467    15.1994      15.4114  14.9786   15.0581  90177135 \n",
       "7   15.0581    15.1641      15.4732  15.0846   15.4114  55374454 \n",
       "8   15.4114    15.5174      15.8088  15.3231   15.3584  47869312 \n",
       "9   15.3584    15.0140      15.8883  14.9168   15.8265  54838833 \n",
       "10  15.8265    15.7205      16.0296  15.4732   15.5262  46723139 \n",
       "11  15.5262    15.3937      15.8883  15.2966   15.6145  32729006 \n",
       "12  15.6145    15.7029      15.7912  15.4556   15.6940  29807159 \n",
       "13  15.6940    15.5527      15.6322  15.0846   15.2348  35968636 \n",
       "14  15.2348    15.2083      15.4202  14.5724   14.6430  34197115 \n",
       "15  14.6430    14.8727      15.1111  14.5636   15.0316  42007318 \n",
       "16  15.0316    15.0140      15.1641  14.7667   15.0405  23558971 \n",
       "17  15.0405    14.9786      15.1376  14.4841   14.7137  38279766 \n",
       "18  14.7137    14.7932      14.9963  14.5812   14.7314  44291307 \n",
       "19  14.7314    14.8020      14.8550  14.0248   14.6430  38902180 \n",
       "20  14.6430    14.5901      15.0581  14.4929   14.9257  47429000 \n",
       "21  14.9257    15.0051      15.0140  14.4929   14.5724  29139596 \n",
       "22  14.5724    14.5724      14.9610  14.5371   14.8020  25380981 \n",
       "23  14.8020    14.6607      14.7137  14.5282   14.6695  27779183 \n",
       "24  14.6695    14.8727      15.2966  14.6872   15.2789  47162860 \n",
       "25  15.2789    15.2259      16.2416  15.1465   16.2328  78413454 \n",
       "26  16.2328    15.8795      16.3211  15.7205   16.2946  67296317 \n",
       "27  16.2946    15.4644      15.4821  14.6695   14.9875  98240322 \n",
       "28  14.9875    14.9080      15.4291  14.8550   14.8903  56922239 \n",
       "29  14.8903    14.9698      15.1818  14.8462   15.0316  37540932 \n",
       "30  15.0316    14.9433      15.9590  14.9345   15.9236  108404378\n",
       "... ...        ...          ...      ...       ...      ...      \n",
       "280 15.88      15.85        16.00    15.83     15.96    19902006 \n",
       "281 15.96      15.97        16.13    15.90     16.04    18997369 \n",
       "282 16.04      16.11        16.13    15.97     16.01    13212969 \n",
       "283 16.01      16.01        16.11    15.80     15.87    23446792 \n",
       "284 15.87      15.88        15.90    15.72     15.81    23645144 \n",
       "285 15.81      15.78        16.05    15.77     16.01    24187120 \n",
       "286 16.01      16.05        16.20    15.89     16.16    31036271 \n",
       "287 16.16      16.09        16.18    16.03     16.10    22335442 \n",
       "288 16.10      16.06        16.16    16.02     16.10    20126948 \n",
       "289 16.10      16.12        16.12    15.94     15.97    16154024 \n",
       "290 15.97      15.97        15.99    15.81     15.89    18611375 \n",
       "291 15.89      15.88        15.96    15.75     15.89    22210541 \n",
       "292 15.89      15.88        15.89    15.73     15.75    23426650 \n",
       "293 15.75      15.76        15.78    15.42     15.51    40156553 \n",
       "294 15.51      15.53        15.60    15.30     15.56    36739448 \n",
       "295 15.56      15.50        15.52    15.30     15.30    22889980 \n",
       "296 15.30      15.25        15.27    15.11     15.11    24455407 \n",
       "297 15.11      15.12        15.14    14.90     14.91    41061406 \n",
       "298 14.91      14.92        15.07    14.85     15.05    22688358 \n",
       "299 15.05      15.05        15.11    14.91     15.00    17627803 \n",
       "300 15.00      15.02        15.10    14.99     15.05    12975919 \n",
       "301 15.05      15.06        15.11    15.00     15.05    14939871 \n",
       "302 15.05      15.05        15.25    15.03     15.21    22887645 \n",
       "303 15.21      15.15        15.22    15.08     15.21    15718509 \n",
       "304 15.21      15.21        15.22    15.13     15.16    12607509 \n",
       "305 15.16      15.16        15.16    15.05     15.08    14247943 \n",
       "306 15.08      15.07        15.07    14.90     14.98    19477788 \n",
       "307 14.98      14.95        14.98    14.52     14.92    40194577 \n",
       "308 14.92      14.78        14.90    14.51     14.86    43568576 \n",
       "309 14.86      14.69        14.84    14.66     14.76    19225492 \n",
       "    A股流通市值(元) 总市值(元) A股流通股本(股) 市盈率 \n",
       "1   754425783       -0.4151    -2.5725         17.8602\n",
       "2   1034181474       0.1413     0.8989         17.8139\n",
       "3   838667398        0.1236     0.7795         17.9307\n",
       "4   199502702       -0.5211    -3.2597         17.5766\n",
       "5   1262105060      -0.0177    -0.1142         17.5492\n",
       "6   1550155933      -0.3886    -2.5157         17.1901\n",
       "7   964061502        0.3533     2.3460         17.4099\n",
       "8   843717365       -0.0530    -0.3438         17.6254\n",
       "9   966117848        0.4681     3.0477         17.6174\n",
       "10  836146426       -0.3003    -1.8973         17.8958\n",
       "11  583291559        0.0883     0.5688         17.8219\n",
       "12  527753175        0.0795     0.5090         17.7056\n",
       "13  623546924       -0.4593    -2.9263         17.3359\n",
       "14  582845476       -0.5917    -3.8841         17.0437\n",
       "15  708179241        0.3886     2.6538         16.8585\n",
       "16  400445071        0.0088     0.0588         16.9976\n",
       "17  643611762       -0.3268    -2.1726         16.8134\n",
       "18  742640743        0.0177     0.1200         16.7672\n",
       "19  643984171       -0.0883    -0.5995         16.5539\n",
       "20  799493381        0.2826     1.9300         16.8566\n",
       "21  485275132       -0.3533    -2.3669         16.6535\n",
       "22  425396889        0.2296     1.5758         16.7605\n",
       "23  459255616       -0.1325    -0.8950         16.5324\n",
       "24  799283799        0.6094     4.1541         16.9473\n",
       "25  1401156041       0.9538     6.2428         17.8688\n",
       "26  1221398339       0.0618     0.3808         18.1496\n",
       "27  1657158636      -1.3071    -8.0217         16.8684\n",
       "28  973317374       -0.0971    -0.6482         17.0991\n",
       "29  638223050        0.1413     0.9490         17.0007\n",
       "30  1924212601       0.8920     5.9342         17.7503\n",
       "... ...             ...        ...             ...    \n",
       "280 316984958        0.08       0.5038         15.9273\n",
       "281 304990151        0.08       0.5013         16.0543\n",
       "282 211750766       -0.03      -0.1870         16.026 \n",
       "283 372794465       -0.14      -0.8745         15.8996\n",
       "284 373665115       -0.06      -0.3781         15.803 \n",
       "285 385793421        0.20       1.2650         15.9504\n",
       "286 499121565        0.15       0.9369         16.0819\n",
       "287 359361840       -0.06      -0.3713         16.0893\n",
       "288 323821647        0.00       0.0000         16.089 \n",
       "289 258662668       -0.13      -0.8075         16.0123\n",
       "290 295381671       -0.08      -0.5009         15.871 \n",
       "291 352357729        0.00       0.0000         15.8644\n",
       "292 369388222       -0.14      -0.8811         15.7679\n",
       "293 625510632       -0.24      -1.5238         15.5768\n",
       "294 566536789        0.05       0.3224         15.4204\n",
       "295 351624622       -0.26      -1.6710         15.3615\n",
       "296 371021507       -0.19      -1.2418         15.1713\n",
       "297 614436383       -0.20      -1.3236         14.9638\n",
       "298 340453104        0.14       0.9390         15.0056\n",
       "299 264649933       -0.05      -0.3322         15.0132\n",
       "300 195296862        0.05       0.3333         15.0507\n",
       "301 225022668        0.00       0.0000         15.0619\n",
       "302 345791526        0.16       1.0631         15.1082\n",
       "303 238419161        0.00       0.0000         15.1681\n",
       "304 191225527       -0.05      -0.3287         15.1676\n",
       "305 215130847       -0.08      -0.5277         15.0991\n",
       "306 291839737       -0.10      -0.6631         14.9832\n",
       "307 592160198       -0.06      -0.4005         14.7323\n",
       "308 638781010       -0.06      -0.4021         14.6615\n",
       "309 283864640       -0.10      -0.6729         14.765 "
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "lag(df,5)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 76.将数据向前移动5天"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 87,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<table>\n",
       "<thead><tr><th scope=col>﻿代码</th><th scope=col>简称</th><th scope=col>日期</th><th scope=col>前收盘价(元)</th><th scope=col>开盘价(元)</th><th scope=col>最高价(元)</th><th scope=col>最低价(元)</th><th scope=col>收盘价(元)</th><th scope=col>成交量(股)</th><th scope=col>成交金额(元)</th><th scope=col>涨跌(元)</th><th scope=col>涨跌幅(%)</th><th scope=col>均价(元)</th><th scope=col>换手率(%)</th><th scope=col>A股流通市值(元)</th><th scope=col>总市值(元)</th><th scope=col>A股流通股本(股)</th><th scope=col>市盈率</th></tr></thead>\n",
       "<tbody>\n",
       "\t<tr><td>16.1444    </td><td>15.4997    </td><td>15.7205    </td><td>42240610   </td><td>754425783  </td><td>-0.4151    </td><td>-2.5725    </td><td>17.8602    </td><td>0.2264     </td><td>3.32032e+11</td><td>3.32032e+11</td><td>18653471415</td><td>6.5614     </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td></tr>\n",
       "\t<tr><td>15.9501    </td><td>15.3672    </td><td>15.8618    </td><td>58054793   </td><td>1034181474 </td><td> 0.1413    </td><td> 0.8989    </td><td>17.8139    </td><td>0.3112     </td><td>3.35016e+11</td><td>3.35016e+11</td><td>18653471415</td><td>6.6204     </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td></tr>\n",
       "\t<tr><td>16.0208    </td><td>15.6234    </td><td>15.9855    </td><td>46772653   </td><td>838667398  </td><td> 0.1236    </td><td> 0.7795    </td><td>17.9307    </td><td>0.2507     </td><td>3.37628e+11</td><td>3.37628e+11</td><td>18653471415</td><td>6.6720     </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td></tr>\n",
       "\t<tr><td>15.8088    </td><td>15.3672    </td><td>15.4644    </td><td>11350479   </td><td>199502702  </td><td>-0.5211    </td><td>-3.2597    </td><td>17.5766    </td><td>0.0608     </td><td>3.26622e+11</td><td>3.26622e+11</td><td>18653471415</td><td>6.4545     </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td></tr>\n",
       "\t<tr><td>15.7912    </td><td>14.9345    </td><td>15.4467    </td><td>71918296   </td><td>1262105060 </td><td>-0.0177    </td><td>-0.1142    </td><td>17.5492    </td><td>0.3855     </td><td>3.26249e+11</td><td>3.26249e+11</td><td>18653471415</td><td>6.4471     </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td></tr>\n",
       "\t<tr><td>15.4114    </td><td>14.9786    </td><td>15.0581    </td><td>90177135   </td><td>1550155933 </td><td>-0.3886    </td><td>-2.5157    </td><td>17.1901    </td><td>0.4834     </td><td>3.18042e+11</td><td>3.18042e+11</td><td>18653471415</td><td>6.2849     </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td></tr>\n",
       "\t<tr><td>15.4732    </td><td>15.0846    </td><td>15.4114    </td><td>55374454   </td><td>964061502  </td><td> 0.3533    </td><td> 2.3460    </td><td>17.4099    </td><td>0.2969     </td><td>3.25503e+11</td><td>3.25503e+11</td><td>18653471415</td><td>6.4324     </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td></tr>\n",
       "\t<tr><td>15.8088    </td><td>15.3231    </td><td>15.3584    </td><td>47869312   </td><td>843717365  </td><td>-0.0530    </td><td>-0.3438    </td><td>17.6254    </td><td>0.2566     </td><td>3.24384e+11</td><td>3.24384e+11</td><td>18653471415</td><td>6.4102     </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td></tr>\n",
       "\t<tr><td>15.8883    </td><td>14.9168    </td><td>15.8265    </td><td>54838833   </td><td>966117848  </td><td> 0.4681    </td><td> 3.0477    </td><td>17.6174    </td><td>0.2940     </td><td>3.34270e+11</td><td>3.34270e+11</td><td>18653471415</td><td>6.6056     </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td></tr>\n",
       "\t<tr><td>16.0296    </td><td>15.4732    </td><td>15.5262    </td><td>46723139   </td><td>836146426  </td><td>-0.3003    </td><td>-1.8973    </td><td>17.8958    </td><td>0.2505     </td><td>3.27928e+11</td><td>3.27928e+11</td><td>18653471415</td><td>6.4803     </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td></tr>\n",
       "\t<tr><td>15.8883    </td><td>15.2966    </td><td>15.6145    </td><td>32729006   </td><td>583291559  </td><td> 0.0883    </td><td> 0.5688    </td><td>17.8219    </td><td>0.1755     </td><td>3.29793e+11</td><td>3.29793e+11</td><td>18653471415</td><td>6.5171     </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td></tr>\n",
       "\t<tr><td>15.7912    </td><td>15.4556    </td><td>15.6940    </td><td>29807159   </td><td>527753175  </td><td> 0.0795    </td><td> 0.5090    </td><td>17.7056    </td><td>0.1598     </td><td>3.31472e+11</td><td>3.31472e+11</td><td>18653471415</td><td>6.5503     </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td></tr>\n",
       "\t<tr><td>15.6322    </td><td>15.0846    </td><td>15.2348    </td><td>35968636   </td><td>623546924  </td><td>-0.4593    </td><td>-2.9263    </td><td>17.3359    </td><td>0.1928     </td><td>3.21772e+11</td><td>3.21772e+11</td><td>18653471415</td><td>6.3586     </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td></tr>\n",
       "\t<tr><td>15.4202    </td><td>14.5724    </td><td>14.6430    </td><td>34197115   </td><td>582845476  </td><td>-0.5917    </td><td>-3.8841    </td><td>17.0437    </td><td>0.1833     </td><td>3.09275e+11</td><td>3.09275e+11</td><td>18653471415</td><td>6.1117     </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td></tr>\n",
       "\t<tr><td>15.1111    </td><td>14.5636    </td><td>15.0316    </td><td>42007318   </td><td>708179241  </td><td> 0.3886    </td><td> 2.6538    </td><td>16.8585    </td><td>0.2252     </td><td>3.17482e+11</td><td>3.17482e+11</td><td>18653471415</td><td>6.2739     </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td></tr>\n",
       "\t<tr><td>15.1641    </td><td>14.7667    </td><td>15.0405    </td><td>23558971   </td><td>400445071  </td><td> 0.0088    </td><td> 0.0588    </td><td>16.9976    </td><td>0.1263     </td><td>3.17669e+11</td><td>3.17669e+11</td><td>18653471415</td><td>6.2775     </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td></tr>\n",
       "\t<tr><td>15.1376    </td><td>14.4841    </td><td>14.7137    </td><td>38279766   </td><td>643611762  </td><td>-0.3268    </td><td>-2.1726    </td><td>16.8134    </td><td>0.2052     </td><td>3.10767e+11</td><td>3.10767e+11</td><td>18653471415</td><td>6.1412     </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td></tr>\n",
       "\t<tr><td>14.9963    </td><td>14.5812    </td><td>14.7314    </td><td>44291307   </td><td>742640743  </td><td> 0.0177    </td><td> 0.1200    </td><td>16.7672    </td><td>0.2374     </td><td>3.11140e+11</td><td>3.11140e+11</td><td>18653471415</td><td>6.1485     </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td></tr>\n",
       "\t<tr><td>14.8550    </td><td>14.0248    </td><td>14.6430    </td><td>38902180   </td><td>643984171  </td><td>-0.0883    </td><td>-0.5995    </td><td>16.5539    </td><td>0.2086     </td><td>3.09275e+11</td><td>3.09275e+11</td><td>18653471415</td><td>6.1117     </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td></tr>\n",
       "\t<tr><td>15.0581    </td><td>14.4929    </td><td>14.9257    </td><td>47429000   </td><td>799493381  </td><td> 0.2826    </td><td> 1.9300    </td><td>16.8566    </td><td>0.2543     </td><td>3.15244e+11</td><td>3.15244e+11</td><td>18653471415</td><td>6.2296     </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td></tr>\n",
       "\t<tr><td>15.0140    </td><td>14.4929    </td><td>14.5724    </td><td>29139596   </td><td>485275132  </td><td>-0.3533    </td><td>-2.3669    </td><td>16.6535    </td><td>0.1562     </td><td>3.07782e+11</td><td>3.07782e+11</td><td>18653471415</td><td>6.0822     </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td></tr>\n",
       "\t<tr><td>14.9610    </td><td>14.5371    </td><td>14.8020    </td><td>25380981   </td><td>425396889  </td><td> 0.2296    </td><td> 1.5758    </td><td>16.7605    </td><td>0.1361     </td><td>3.12632e+11</td><td>3.12632e+11</td><td>18653471415</td><td>6.1780     </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td></tr>\n",
       "\t<tr><td>14.7137    </td><td>14.5282    </td><td>14.6695    </td><td>27779183   </td><td>459255616  </td><td>-0.1325    </td><td>-0.8950    </td><td>16.5324    </td><td>0.1489     </td><td>3.09834e+11</td><td>3.09834e+11</td><td>18653471415</td><td>6.1227     </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td></tr>\n",
       "\t<tr><td>15.2966    </td><td>14.6872    </td><td>15.2789    </td><td>47162860   </td><td>799283799  </td><td> 0.6094    </td><td> 4.1541    </td><td>16.9473    </td><td>0.2528     </td><td>3.22705e+11</td><td>3.22705e+11</td><td>18653471415</td><td>6.3771     </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td></tr>\n",
       "\t<tr><td>16.2416    </td><td>15.1465    </td><td>16.2328    </td><td>78413454   </td><td>1401156041 </td><td> 0.9538    </td><td> 6.2428    </td><td>17.8688    </td><td>0.4204     </td><td>3.42851e+11</td><td>3.42851e+11</td><td>18653471415</td><td>6.7752     </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td></tr>\n",
       "\t<tr><td>16.3211    </td><td>15.7205    </td><td>16.2946    </td><td>67296317   </td><td>1221398339 </td><td> 0.0618    </td><td> 0.3808    </td><td>18.1496    </td><td>0.3608     </td><td>3.44157e+11</td><td>3.44157e+11</td><td>18653471415</td><td>6.8010     </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td></tr>\n",
       "\t<tr><td>15.4821    </td><td>14.6695    </td><td>14.9875    </td><td>98240322   </td><td>1657158636 </td><td>-1.3071    </td><td>-8.0217    </td><td>16.8684    </td><td>0.5267     </td><td>3.16549e+11</td><td>3.16549e+11</td><td>18653471415</td><td>6.2554     </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td></tr>\n",
       "\t<tr><td>15.4291    </td><td>14.8550    </td><td>14.8903    </td><td>56922239   </td><td>973317374  </td><td>-0.0971    </td><td>-0.6482    </td><td>17.0991    </td><td>0.3052     </td><td>3.14498e+11</td><td>3.14498e+11</td><td>18653471415</td><td>6.2149     </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td></tr>\n",
       "\t<tr><td>15.1818    </td><td>14.8462    </td><td>15.0316    </td><td>37540932   </td><td>638223050  </td><td> 0.1413    </td><td> 0.9490    </td><td>17.0007    </td><td>0.2013     </td><td>3.17482e+11</td><td>3.17482e+11</td><td>18653471415</td><td>6.2739     </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td></tr>\n",
       "\t<tr><td>15.9590    </td><td>14.9345    </td><td>15.9236    </td><td>108404378  </td><td>1924212601 </td><td> 0.8920    </td><td> 5.9342    </td><td>17.7503    </td><td>0.5811     </td><td>3.36322e+11</td><td>3.36322e+11</td><td>18653471415</td><td>6.6462     </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td></tr>\n",
       "\t<tr><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td></tr>\n",
       "\t<tr><td>16.00      </td><td>15.83      </td><td>15.96      </td><td>19902006   </td><td>316984958  </td><td> 0.08      </td><td> 0.5038    </td><td>15.9273    </td><td>0.0921     </td><td>3.45028e+11</td><td>3.45028e+11</td><td>21618279922</td><td>6.4978     </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td></tr>\n",
       "\t<tr><td>16.13      </td><td>15.90      </td><td>16.04      </td><td>18997369   </td><td>304990151  </td><td> 0.08      </td><td> 0.5013    </td><td>16.0543    </td><td>0.0879     </td><td>3.46757e+11</td><td>3.46757e+11</td><td>21618279922</td><td>6.5304     </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td></tr>\n",
       "\t<tr><td>16.13      </td><td>15.97      </td><td>16.01      </td><td>13212969   </td><td>211750766  </td><td>-0.03      </td><td>-0.1870    </td><td>16.026     </td><td>0.0611     </td><td>3.46109e+11</td><td>3.46109e+11</td><td>21618279922</td><td>6.5182     </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td></tr>\n",
       "\t<tr><td>16.11      </td><td>15.80      </td><td>15.87      </td><td>23446792   </td><td>372794465  </td><td>-0.14      </td><td>-0.8745    </td><td>15.8996    </td><td>0.1085     </td><td>3.43082e+11</td><td>3.43082e+11</td><td>21618279922</td><td>6.4612     </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td></tr>\n",
       "\t<tr><td>15.90      </td><td>15.72      </td><td>15.81      </td><td>23645144   </td><td>373665115  </td><td>-0.06      </td><td>-0.3781    </td><td>15.803     </td><td>0.1094     </td><td>3.41785e+11</td><td>3.41785e+11</td><td>21618279922</td><td>6.4368     </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td></tr>\n",
       "\t<tr><td>16.05      </td><td>15.77      </td><td>16.01      </td><td>24187120   </td><td>385793421  </td><td> 0.20      </td><td> 1.2650    </td><td>15.9504    </td><td>0.1119     </td><td>3.46109e+11</td><td>3.46109e+11</td><td>21618279922</td><td>6.5182     </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td></tr>\n",
       "\t<tr><td>16.20      </td><td>15.89      </td><td>16.16      </td><td>31036271   </td><td>499121565  </td><td> 0.15      </td><td> 0.9369    </td><td>16.0819    </td><td>0.1436     </td><td>3.49351e+11</td><td>3.49351e+11</td><td>21618279922</td><td>6.5792     </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td></tr>\n",
       "\t<tr><td>16.18      </td><td>16.03      </td><td>16.10      </td><td>22335442   </td><td>359361840  </td><td>-0.06      </td><td>-0.3713    </td><td>16.0893    </td><td>0.1033     </td><td>3.48054e+11</td><td>3.48054e+11</td><td>21618279922</td><td>6.5548     </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td></tr>\n",
       "\t<tr><td>16.16      </td><td>16.02      </td><td>16.10      </td><td>20126948   </td><td>323821647  </td><td> 0.00      </td><td> 0.0000    </td><td>16.089     </td><td>0.0931     </td><td>3.48054e+11</td><td>3.48054e+11</td><td>21618279922</td><td>6.5548     </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td></tr>\n",
       "\t<tr><td>16.12      </td><td>15.94      </td><td>15.97      </td><td>16154024   </td><td>258662668  </td><td>-0.13      </td><td>-0.8075    </td><td>16.0123    </td><td>0.0747     </td><td>3.45244e+11</td><td>3.45244e+11</td><td>21618279922</td><td>6.5019     </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td></tr>\n",
       "\t<tr><td>15.99      </td><td>15.81      </td><td>15.89      </td><td>18611375   </td><td>295381671  </td><td>-0.08      </td><td>-0.5009    </td><td>15.871     </td><td>0.0861     </td><td>3.43514e+11</td><td>3.43514e+11</td><td>21618279922</td><td>6.4693     </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td></tr>\n",
       "\t<tr><td>15.96      </td><td>15.75      </td><td>15.89      </td><td>22210541   </td><td>352357729  </td><td> 0.00      </td><td> 0.0000    </td><td>15.8644    </td><td>0.1027     </td><td>3.43514e+11</td><td>3.43514e+11</td><td>21618279922</td><td>6.4693     </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td></tr>\n",
       "\t<tr><td>15.89      </td><td>15.73      </td><td>15.75      </td><td>23426650   </td><td>369388222  </td><td>-0.14      </td><td>-0.8811    </td><td>15.7679    </td><td>0.1084     </td><td>3.40488e+11</td><td>3.40488e+11</td><td>21618279922</td><td>6.4123     </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td></tr>\n",
       "\t<tr><td>15.78      </td><td>15.42      </td><td>15.51      </td><td>40156553   </td><td>625510632  </td><td>-0.24      </td><td>-1.5238    </td><td>15.5768    </td><td>0.1858     </td><td>3.35300e+11</td><td>3.35300e+11</td><td>21618279922</td><td>6.3146     </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td></tr>\n",
       "\t<tr><td>15.60      </td><td>15.30      </td><td>15.56      </td><td>36739448   </td><td>566536789  </td><td> 0.05      </td><td> 0.3224    </td><td>15.4204    </td><td>0.1699     </td><td>3.36380e+11</td><td>3.36380e+11</td><td>21618279922</td><td>6.3350     </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td></tr>\n",
       "\t<tr><td>15.52      </td><td>15.30      </td><td>15.30      </td><td>22889980   </td><td>351624622  </td><td>-0.26      </td><td>-1.6710    </td><td>15.3615    </td><td>0.1059     </td><td>3.30760e+11</td><td>3.30760e+11</td><td>21618279922</td><td>6.2291     </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td></tr>\n",
       "\t<tr><td>15.27      </td><td>15.11      </td><td>15.11      </td><td>24455407   </td><td>371021507  </td><td>-0.19      </td><td>-1.2418    </td><td>15.1713    </td><td>0.1131     </td><td>3.26652e+11</td><td>3.26652e+11</td><td>21618279922</td><td>6.1518     </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td></tr>\n",
       "\t<tr><td>15.14      </td><td>14.90      </td><td>14.91      </td><td>41061406   </td><td>614436383  </td><td>-0.20      </td><td>-1.3236    </td><td>14.9638    </td><td>0.1899     </td><td>3.22329e+11</td><td>3.22329e+11</td><td>21618279922</td><td>6.0703     </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td></tr>\n",
       "\t<tr><td>15.07      </td><td>14.85      </td><td>15.05      </td><td>22688358   </td><td>340453104  </td><td> 0.14      </td><td> 0.9390    </td><td>15.0056    </td><td>0.1049     </td><td>3.25355e+11</td><td>3.25355e+11</td><td>21618279922</td><td>6.1273     </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td></tr>\n",
       "\t<tr><td>15.11      </td><td>14.91      </td><td>15.00      </td><td>17627803   </td><td>264649933  </td><td>-0.05      </td><td>-0.3322    </td><td>15.0132    </td><td>0.0815     </td><td>3.24274e+11</td><td>3.24274e+11</td><td>21618279922</td><td>6.1070     </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td></tr>\n",
       "\t<tr><td>15.10      </td><td>14.99      </td><td>15.05      </td><td>12975919   </td><td>195296862  </td><td> 0.05      </td><td> 0.3333    </td><td>15.0507    </td><td>0.0600     </td><td>3.25355e+11</td><td>3.25355e+11</td><td>21618279922</td><td>6.1273     </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td></tr>\n",
       "\t<tr><td>15.11      </td><td>15.00      </td><td>15.05      </td><td>14939871   </td><td>225022668  </td><td> 0.00      </td><td> 0.0000    </td><td>15.0619    </td><td>0.0691     </td><td>3.25355e+11</td><td>3.25355e+11</td><td>21618279922</td><td>6.1273     </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td></tr>\n",
       "\t<tr><td>15.25      </td><td>15.03      </td><td>15.21      </td><td>22887645   </td><td>345791526  </td><td> 0.16      </td><td> 1.0631    </td><td>15.1082    </td><td>0.1059     </td><td>3.28814e+11</td><td>3.28814e+11</td><td>21618279922</td><td>6.1925     </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td></tr>\n",
       "\t<tr><td>15.22      </td><td>15.08      </td><td>15.21      </td><td>15718509   </td><td>238419161  </td><td> 0.00      </td><td> 0.0000    </td><td>15.1681    </td><td>0.0727     </td><td>3.28814e+11</td><td>3.28814e+11</td><td>21618279922</td><td>6.1925     </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td></tr>\n",
       "\t<tr><td>15.22      </td><td>15.13      </td><td>15.16      </td><td>12607509   </td><td>191225527  </td><td>-0.05      </td><td>-0.3287    </td><td>15.1676    </td><td>0.0583     </td><td>3.27733e+11</td><td>3.27733e+11</td><td>21618279922</td><td>6.1721     </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td></tr>\n",
       "\t<tr><td>15.16      </td><td>15.05      </td><td>15.08      </td><td>14247943   </td><td>215130847  </td><td>-0.08      </td><td>-0.5277    </td><td>15.0991    </td><td>0.0659     </td><td>3.26004e+11</td><td>3.26004e+11</td><td>21618279922</td><td>6.1395     </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td></tr>\n",
       "\t<tr><td>15.07      </td><td>14.90      </td><td>14.98      </td><td>19477788   </td><td>291839737  </td><td>-0.10      </td><td>-0.6631    </td><td>14.9832    </td><td>0.0901     </td><td>3.23842e+11</td><td>3.23842e+11</td><td>21618279922</td><td>6.0988     </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td></tr>\n",
       "\t<tr><td>14.98      </td><td>14.52      </td><td>14.92      </td><td>40194577   </td><td>592160198  </td><td>-0.06      </td><td>-0.4005    </td><td>14.7323    </td><td>0.1859     </td><td>3.22545e+11</td><td>3.22545e+11</td><td>21618279922</td><td>6.0744     </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td></tr>\n",
       "\t<tr><td>14.90      </td><td>14.51      </td><td>14.86      </td><td>43568576   </td><td>638781010  </td><td>-0.06      </td><td>-0.4021    </td><td>14.6615    </td><td>0.2015     </td><td>3.21248e+11</td><td>3.21248e+11</td><td>21618279922</td><td>6.0500     </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td></tr>\n",
       "\t<tr><td>14.84      </td><td>14.66      </td><td>14.76      </td><td>19225492   </td><td>283864640  </td><td>-0.10      </td><td>-0.6729    </td><td>14.765     </td><td>0.0889     </td><td>3.19086e+11</td><td>3.19086e+11</td><td>21618279922</td><td>6.0093     </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td><td>NA         </td></tr>\n",
       "</tbody>\n",
       "</table>\n"
      ],
      "text/latex": [
       "\\begin{tabular}{r|llllllllllllllllll}\n",
       " ﻿代码 & 简称 & 日期 & 前收盘价(元) & 开盘价(元) & 最高价(元) & 最低价(元) & 收盘价(元) & 成交量(股) & 成交金额(元) & 涨跌(元) & 涨跌幅(\\%) & 均价(元) & 换手率(\\%) & A股流通市值(元) & 总市值(元) & A股流通股本(股) & 市盈率\\\\\n",
       "\\hline\n",
       "\t 16.1444     & 15.4997     & 15.7205     & 42240610    & 754425783   & -0.4151     & -2.5725     & 17.8602     & 0.2264      & 3.32032e+11 & 3.32032e+11 & 18653471415 & 6.5614      & NA          & NA          & NA          & NA          & NA         \\\\\n",
       "\t 15.9501     & 15.3672     & 15.8618     & 58054793    & 1034181474  &  0.1413     &  0.8989     & 17.8139     & 0.3112      & 3.35016e+11 & 3.35016e+11 & 18653471415 & 6.6204      & NA          & NA          & NA          & NA          & NA         \\\\\n",
       "\t 16.0208     & 15.6234     & 15.9855     & 46772653    & 838667398   &  0.1236     &  0.7795     & 17.9307     & 0.2507      & 3.37628e+11 & 3.37628e+11 & 18653471415 & 6.6720      & NA          & NA          & NA          & NA          & NA         \\\\\n",
       "\t 15.8088     & 15.3672     & 15.4644     & 11350479    & 199502702   & -0.5211     & -3.2597     & 17.5766     & 0.0608      & 3.26622e+11 & 3.26622e+11 & 18653471415 & 6.4545      & NA          & NA          & NA          & NA          & NA         \\\\\n",
       "\t 15.7912     & 14.9345     & 15.4467     & 71918296    & 1262105060  & -0.0177     & -0.1142     & 17.5492     & 0.3855      & 3.26249e+11 & 3.26249e+11 & 18653471415 & 6.4471      & NA          & NA          & NA          & NA          & NA         \\\\\n",
       "\t 15.4114     & 14.9786     & 15.0581     & 90177135    & 1550155933  & -0.3886     & -2.5157     & 17.1901     & 0.4834      & 3.18042e+11 & 3.18042e+11 & 18653471415 & 6.2849      & NA          & NA          & NA          & NA          & NA         \\\\\n",
       "\t 15.4732     & 15.0846     & 15.4114     & 55374454    & 964061502   &  0.3533     &  2.3460     & 17.4099     & 0.2969      & 3.25503e+11 & 3.25503e+11 & 18653471415 & 6.4324      & NA          & NA          & NA          & NA          & NA         \\\\\n",
       "\t 15.8088     & 15.3231     & 15.3584     & 47869312    & 843717365   & -0.0530     & -0.3438     & 17.6254     & 0.2566      & 3.24384e+11 & 3.24384e+11 & 18653471415 & 6.4102      & NA          & NA          & NA          & NA          & NA         \\\\\n",
       "\t 15.8883     & 14.9168     & 15.8265     & 54838833    & 966117848   &  0.4681     &  3.0477     & 17.6174     & 0.2940      & 3.34270e+11 & 3.34270e+11 & 18653471415 & 6.6056      & NA          & NA          & NA          & NA          & NA         \\\\\n",
       "\t 16.0296     & 15.4732     & 15.5262     & 46723139    & 836146426   & -0.3003     & -1.8973     & 17.8958     & 0.2505      & 3.27928e+11 & 3.27928e+11 & 18653471415 & 6.4803      & NA          & NA          & NA          & NA          & NA         \\\\\n",
       "\t 15.8883     & 15.2966     & 15.6145     & 32729006    & 583291559   &  0.0883     &  0.5688     & 17.8219     & 0.1755      & 3.29793e+11 & 3.29793e+11 & 18653471415 & 6.5171      & NA          & NA          & NA          & NA          & NA         \\\\\n",
       "\t 15.7912     & 15.4556     & 15.6940     & 29807159    & 527753175   &  0.0795     &  0.5090     & 17.7056     & 0.1598      & 3.31472e+11 & 3.31472e+11 & 18653471415 & 6.5503      & NA          & NA          & NA          & NA          & NA         \\\\\n",
       "\t 15.6322     & 15.0846     & 15.2348     & 35968636    & 623546924   & -0.4593     & -2.9263     & 17.3359     & 0.1928      & 3.21772e+11 & 3.21772e+11 & 18653471415 & 6.3586      & NA          & NA          & NA          & NA          & NA         \\\\\n",
       "\t 15.4202     & 14.5724     & 14.6430     & 34197115    & 582845476   & -0.5917     & -3.8841     & 17.0437     & 0.1833      & 3.09275e+11 & 3.09275e+11 & 18653471415 & 6.1117      & NA          & NA          & NA          & NA          & NA         \\\\\n",
       "\t 15.1111     & 14.5636     & 15.0316     & 42007318    & 708179241   &  0.3886     &  2.6538     & 16.8585     & 0.2252      & 3.17482e+11 & 3.17482e+11 & 18653471415 & 6.2739      & NA          & NA          & NA          & NA          & NA         \\\\\n",
       "\t 15.1641     & 14.7667     & 15.0405     & 23558971    & 400445071   &  0.0088     &  0.0588     & 16.9976     & 0.1263      & 3.17669e+11 & 3.17669e+11 & 18653471415 & 6.2775      & NA          & NA          & NA          & NA          & NA         \\\\\n",
       "\t 15.1376     & 14.4841     & 14.7137     & 38279766    & 643611762   & -0.3268     & -2.1726     & 16.8134     & 0.2052      & 3.10767e+11 & 3.10767e+11 & 18653471415 & 6.1412      & NA          & NA          & NA          & NA          & NA         \\\\\n",
       "\t 14.9963     & 14.5812     & 14.7314     & 44291307    & 742640743   &  0.0177     &  0.1200     & 16.7672     & 0.2374      & 3.11140e+11 & 3.11140e+11 & 18653471415 & 6.1485      & NA          & NA          & NA          & NA          & NA         \\\\\n",
       "\t 14.8550     & 14.0248     & 14.6430     & 38902180    & 643984171   & -0.0883     & -0.5995     & 16.5539     & 0.2086      & 3.09275e+11 & 3.09275e+11 & 18653471415 & 6.1117      & NA          & NA          & NA          & NA          & NA         \\\\\n",
       "\t 15.0581     & 14.4929     & 14.9257     & 47429000    & 799493381   &  0.2826     &  1.9300     & 16.8566     & 0.2543      & 3.15244e+11 & 3.15244e+11 & 18653471415 & 6.2296      & NA          & NA          & NA          & NA          & NA         \\\\\n",
       "\t 15.0140     & 14.4929     & 14.5724     & 29139596    & 485275132   & -0.3533     & -2.3669     & 16.6535     & 0.1562      & 3.07782e+11 & 3.07782e+11 & 18653471415 & 6.0822      & NA          & NA          & NA          & NA          & NA         \\\\\n",
       "\t 14.9610     & 14.5371     & 14.8020     & 25380981    & 425396889   &  0.2296     &  1.5758     & 16.7605     & 0.1361      & 3.12632e+11 & 3.12632e+11 & 18653471415 & 6.1780      & NA          & NA          & NA          & NA          & NA         \\\\\n",
       "\t 14.7137     & 14.5282     & 14.6695     & 27779183    & 459255616   & -0.1325     & -0.8950     & 16.5324     & 0.1489      & 3.09834e+11 & 3.09834e+11 & 18653471415 & 6.1227      & NA          & NA          & NA          & NA          & NA         \\\\\n",
       "\t 15.2966     & 14.6872     & 15.2789     & 47162860    & 799283799   &  0.6094     &  4.1541     & 16.9473     & 0.2528      & 3.22705e+11 & 3.22705e+11 & 18653471415 & 6.3771      & NA          & NA          & NA          & NA          & NA         \\\\\n",
       "\t 16.2416     & 15.1465     & 16.2328     & 78413454    & 1401156041  &  0.9538     &  6.2428     & 17.8688     & 0.4204      & 3.42851e+11 & 3.42851e+11 & 18653471415 & 6.7752      & NA          & NA          & NA          & NA          & NA         \\\\\n",
       "\t 16.3211     & 15.7205     & 16.2946     & 67296317    & 1221398339  &  0.0618     &  0.3808     & 18.1496     & 0.3608      & 3.44157e+11 & 3.44157e+11 & 18653471415 & 6.8010      & NA          & NA          & NA          & NA          & NA         \\\\\n",
       "\t 15.4821     & 14.6695     & 14.9875     & 98240322    & 1657158636  & -1.3071     & -8.0217     & 16.8684     & 0.5267      & 3.16549e+11 & 3.16549e+11 & 18653471415 & 6.2554      & NA          & NA          & NA          & NA          & NA         \\\\\n",
       "\t 15.4291     & 14.8550     & 14.8903     & 56922239    & 973317374   & -0.0971     & -0.6482     & 17.0991     & 0.3052      & 3.14498e+11 & 3.14498e+11 & 18653471415 & 6.2149      & NA          & NA          & NA          & NA          & NA         \\\\\n",
       "\t 15.1818     & 14.8462     & 15.0316     & 37540932    & 638223050   &  0.1413     &  0.9490     & 17.0007     & 0.2013      & 3.17482e+11 & 3.17482e+11 & 18653471415 & 6.2739      & NA          & NA          & NA          & NA          & NA         \\\\\n",
       "\t 15.9590     & 14.9345     & 15.9236     & 108404378   & 1924212601  &  0.8920     &  5.9342     & 17.7503     & 0.5811      & 3.36322e+11 & 3.36322e+11 & 18653471415 & 6.6462      & NA          & NA          & NA          & NA          & NA         \\\\\n",
       "\t ... & ... & ... & ... & ... & ... & ... & ... & ... & ... & ... & ... & ... & ... & ... & ... & ... & ...\\\\\n",
       "\t 16.00       & 15.83       & 15.96       & 19902006    & 316984958   &  0.08       &  0.5038     & 15.9273     & 0.0921      & 3.45028e+11 & 3.45028e+11 & 21618279922 & 6.4978      & NA          & NA          & NA          & NA          & NA         \\\\\n",
       "\t 16.13       & 15.90       & 16.04       & 18997369    & 304990151   &  0.08       &  0.5013     & 16.0543     & 0.0879      & 3.46757e+11 & 3.46757e+11 & 21618279922 & 6.5304      & NA          & NA          & NA          & NA          & NA         \\\\\n",
       "\t 16.13       & 15.97       & 16.01       & 13212969    & 211750766   & -0.03       & -0.1870     & 16.026      & 0.0611      & 3.46109e+11 & 3.46109e+11 & 21618279922 & 6.5182      & NA          & NA          & NA          & NA          & NA         \\\\\n",
       "\t 16.11       & 15.80       & 15.87       & 23446792    & 372794465   & -0.14       & -0.8745     & 15.8996     & 0.1085      & 3.43082e+11 & 3.43082e+11 & 21618279922 & 6.4612      & NA          & NA          & NA          & NA          & NA         \\\\\n",
       "\t 15.90       & 15.72       & 15.81       & 23645144    & 373665115   & -0.06       & -0.3781     & 15.803      & 0.1094      & 3.41785e+11 & 3.41785e+11 & 21618279922 & 6.4368      & NA          & NA          & NA          & NA          & NA         \\\\\n",
       "\t 16.05       & 15.77       & 16.01       & 24187120    & 385793421   &  0.20       &  1.2650     & 15.9504     & 0.1119      & 3.46109e+11 & 3.46109e+11 & 21618279922 & 6.5182      & NA          & NA          & NA          & NA          & NA         \\\\\n",
       "\t 16.20       & 15.89       & 16.16       & 31036271    & 499121565   &  0.15       &  0.9369     & 16.0819     & 0.1436      & 3.49351e+11 & 3.49351e+11 & 21618279922 & 6.5792      & NA          & NA          & NA          & NA          & NA         \\\\\n",
       "\t 16.18       & 16.03       & 16.10       & 22335442    & 359361840   & -0.06       & -0.3713     & 16.0893     & 0.1033      & 3.48054e+11 & 3.48054e+11 & 21618279922 & 6.5548      & NA          & NA          & NA          & NA          & NA         \\\\\n",
       "\t 16.16       & 16.02       & 16.10       & 20126948    & 323821647   &  0.00       &  0.0000     & 16.089      & 0.0931      & 3.48054e+11 & 3.48054e+11 & 21618279922 & 6.5548      & NA          & NA          & NA          & NA          & NA         \\\\\n",
       "\t 16.12       & 15.94       & 15.97       & 16154024    & 258662668   & -0.13       & -0.8075     & 16.0123     & 0.0747      & 3.45244e+11 & 3.45244e+11 & 21618279922 & 6.5019      & NA          & NA          & NA          & NA          & NA         \\\\\n",
       "\t 15.99       & 15.81       & 15.89       & 18611375    & 295381671   & -0.08       & -0.5009     & 15.871      & 0.0861      & 3.43514e+11 & 3.43514e+11 & 21618279922 & 6.4693      & NA          & NA          & NA          & NA          & NA         \\\\\n",
       "\t 15.96       & 15.75       & 15.89       & 22210541    & 352357729   &  0.00       &  0.0000     & 15.8644     & 0.1027      & 3.43514e+11 & 3.43514e+11 & 21618279922 & 6.4693      & NA          & NA          & NA          & NA          & NA         \\\\\n",
       "\t 15.89       & 15.73       & 15.75       & 23426650    & 369388222   & -0.14       & -0.8811     & 15.7679     & 0.1084      & 3.40488e+11 & 3.40488e+11 & 21618279922 & 6.4123      & NA          & NA          & NA          & NA          & NA         \\\\\n",
       "\t 15.78       & 15.42       & 15.51       & 40156553    & 625510632   & -0.24       & -1.5238     & 15.5768     & 0.1858      & 3.35300e+11 & 3.35300e+11 & 21618279922 & 6.3146      & NA          & NA          & NA          & NA          & NA         \\\\\n",
       "\t 15.60       & 15.30       & 15.56       & 36739448    & 566536789   &  0.05       &  0.3224     & 15.4204     & 0.1699      & 3.36380e+11 & 3.36380e+11 & 21618279922 & 6.3350      & NA          & NA          & NA          & NA          & NA         \\\\\n",
       "\t 15.52       & 15.30       & 15.30       & 22889980    & 351624622   & -0.26       & -1.6710     & 15.3615     & 0.1059      & 3.30760e+11 & 3.30760e+11 & 21618279922 & 6.2291      & NA          & NA          & NA          & NA          & NA         \\\\\n",
       "\t 15.27       & 15.11       & 15.11       & 24455407    & 371021507   & -0.19       & -1.2418     & 15.1713     & 0.1131      & 3.26652e+11 & 3.26652e+11 & 21618279922 & 6.1518      & NA          & NA          & NA          & NA          & NA         \\\\\n",
       "\t 15.14       & 14.90       & 14.91       & 41061406    & 614436383   & -0.20       & -1.3236     & 14.9638     & 0.1899      & 3.22329e+11 & 3.22329e+11 & 21618279922 & 6.0703      & NA          & NA          & NA          & NA          & NA         \\\\\n",
       "\t 15.07       & 14.85       & 15.05       & 22688358    & 340453104   &  0.14       &  0.9390     & 15.0056     & 0.1049      & 3.25355e+11 & 3.25355e+11 & 21618279922 & 6.1273      & NA          & NA          & NA          & NA          & NA         \\\\\n",
       "\t 15.11       & 14.91       & 15.00       & 17627803    & 264649933   & -0.05       & -0.3322     & 15.0132     & 0.0815      & 3.24274e+11 & 3.24274e+11 & 21618279922 & 6.1070      & NA          & NA          & NA          & NA          & NA         \\\\\n",
       "\t 15.10       & 14.99       & 15.05       & 12975919    & 195296862   &  0.05       &  0.3333     & 15.0507     & 0.0600      & 3.25355e+11 & 3.25355e+11 & 21618279922 & 6.1273      & NA          & NA          & NA          & NA          & NA         \\\\\n",
       "\t 15.11       & 15.00       & 15.05       & 14939871    & 225022668   &  0.00       &  0.0000     & 15.0619     & 0.0691      & 3.25355e+11 & 3.25355e+11 & 21618279922 & 6.1273      & NA          & NA          & NA          & NA          & NA         \\\\\n",
       "\t 15.25       & 15.03       & 15.21       & 22887645    & 345791526   &  0.16       &  1.0631     & 15.1082     & 0.1059      & 3.28814e+11 & 3.28814e+11 & 21618279922 & 6.1925      & NA          & NA          & NA          & NA          & NA         \\\\\n",
       "\t 15.22       & 15.08       & 15.21       & 15718509    & 238419161   &  0.00       &  0.0000     & 15.1681     & 0.0727      & 3.28814e+11 & 3.28814e+11 & 21618279922 & 6.1925      & NA          & NA          & NA          & NA          & NA         \\\\\n",
       "\t 15.22       & 15.13       & 15.16       & 12607509    & 191225527   & -0.05       & -0.3287     & 15.1676     & 0.0583      & 3.27733e+11 & 3.27733e+11 & 21618279922 & 6.1721      & NA          & NA          & NA          & NA          & NA         \\\\\n",
       "\t 15.16       & 15.05       & 15.08       & 14247943    & 215130847   & -0.08       & -0.5277     & 15.0991     & 0.0659      & 3.26004e+11 & 3.26004e+11 & 21618279922 & 6.1395      & NA          & NA          & NA          & NA          & NA         \\\\\n",
       "\t 15.07       & 14.90       & 14.98       & 19477788    & 291839737   & -0.10       & -0.6631     & 14.9832     & 0.0901      & 3.23842e+11 & 3.23842e+11 & 21618279922 & 6.0988      & NA          & NA          & NA          & NA          & NA         \\\\\n",
       "\t 14.98       & 14.52       & 14.92       & 40194577    & 592160198   & -0.06       & -0.4005     & 14.7323     & 0.1859      & 3.22545e+11 & 3.22545e+11 & 21618279922 & 6.0744      & NA          & NA          & NA          & NA          & NA         \\\\\n",
       "\t 14.90       & 14.51       & 14.86       & 43568576    & 638781010   & -0.06       & -0.4021     & 14.6615     & 0.2015      & 3.21248e+11 & 3.21248e+11 & 21618279922 & 6.0500      & NA          & NA          & NA          & NA          & NA         \\\\\n",
       "\t 14.84       & 14.66       & 14.76       & 19225492    & 283864640   & -0.10       & -0.6729     & 14.765      & 0.0889      & 3.19086e+11 & 3.19086e+11 & 21618279922 & 6.0093      & NA          & NA          & NA          & NA          & NA         \\\\\n",
       "\\end{tabular}\n"
      ],
      "text/markdown": [
       "\n",
       "﻿代码 | 简称 | 日期 | 前收盘价(元) | 开盘价(元) | 最高价(元) | 最低价(元) | 收盘价(元) | 成交量(股) | 成交金额(元) | 涨跌(元) | 涨跌幅(%) | 均价(元) | 换手率(%) | A股流通市值(元) | 总市值(元) | A股流通股本(股) | 市盈率 | \n",
       "|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|\n",
       "| 16.1444     | 15.4997     | 15.7205     | 42240610    | 754425783   | -0.4151     | -2.5725     | 17.8602     | 0.2264      | 3.32032e+11 | 3.32032e+11 | 18653471415 | 6.5614      | NA          | NA          | NA          | NA          | NA          | \n",
       "| 15.9501     | 15.3672     | 15.8618     | 58054793    | 1034181474  |  0.1413     |  0.8989     | 17.8139     | 0.3112      | 3.35016e+11 | 3.35016e+11 | 18653471415 | 6.6204      | NA          | NA          | NA          | NA          | NA          | \n",
       "| 16.0208     | 15.6234     | 15.9855     | 46772653    | 838667398   |  0.1236     |  0.7795     | 17.9307     | 0.2507      | 3.37628e+11 | 3.37628e+11 | 18653471415 | 6.6720      | NA          | NA          | NA          | NA          | NA          | \n",
       "| 15.8088     | 15.3672     | 15.4644     | 11350479    | 199502702   | -0.5211     | -3.2597     | 17.5766     | 0.0608      | 3.26622e+11 | 3.26622e+11 | 18653471415 | 6.4545      | NA          | NA          | NA          | NA          | NA          | \n",
       "| 15.7912     | 14.9345     | 15.4467     | 71918296    | 1262105060  | -0.0177     | -0.1142     | 17.5492     | 0.3855      | 3.26249e+11 | 3.26249e+11 | 18653471415 | 6.4471      | NA          | NA          | NA          | NA          | NA          | \n",
       "| 15.4114     | 14.9786     | 15.0581     | 90177135    | 1550155933  | -0.3886     | -2.5157     | 17.1901     | 0.4834      | 3.18042e+11 | 3.18042e+11 | 18653471415 | 6.2849      | NA          | NA          | NA          | NA          | NA          | \n",
       "| 15.4732     | 15.0846     | 15.4114     | 55374454    | 964061502   |  0.3533     |  2.3460     | 17.4099     | 0.2969      | 3.25503e+11 | 3.25503e+11 | 18653471415 | 6.4324      | NA          | NA          | NA          | NA          | NA          | \n",
       "| 15.8088     | 15.3231     | 15.3584     | 47869312    | 843717365   | -0.0530     | -0.3438     | 17.6254     | 0.2566      | 3.24384e+11 | 3.24384e+11 | 18653471415 | 6.4102      | NA          | NA          | NA          | NA          | NA          | \n",
       "| 15.8883     | 14.9168     | 15.8265     | 54838833    | 966117848   |  0.4681     |  3.0477     | 17.6174     | 0.2940      | 3.34270e+11 | 3.34270e+11 | 18653471415 | 6.6056      | NA          | NA          | NA          | NA          | NA          | \n",
       "| 16.0296     | 15.4732     | 15.5262     | 46723139    | 836146426   | -0.3003     | -1.8973     | 17.8958     | 0.2505      | 3.27928e+11 | 3.27928e+11 | 18653471415 | 6.4803      | NA          | NA          | NA          | NA          | NA          | \n",
       "| 15.8883     | 15.2966     | 15.6145     | 32729006    | 583291559   |  0.0883     |  0.5688     | 17.8219     | 0.1755      | 3.29793e+11 | 3.29793e+11 | 18653471415 | 6.5171      | NA          | NA          | NA          | NA          | NA          | \n",
       "| 15.7912     | 15.4556     | 15.6940     | 29807159    | 527753175   |  0.0795     |  0.5090     | 17.7056     | 0.1598      | 3.31472e+11 | 3.31472e+11 | 18653471415 | 6.5503      | NA          | NA          | NA          | NA          | NA          | \n",
       "| 15.6322     | 15.0846     | 15.2348     | 35968636    | 623546924   | -0.4593     | -2.9263     | 17.3359     | 0.1928      | 3.21772e+11 | 3.21772e+11 | 18653471415 | 6.3586      | NA          | NA          | NA          | NA          | NA          | \n",
       "| 15.4202     | 14.5724     | 14.6430     | 34197115    | 582845476   | -0.5917     | -3.8841     | 17.0437     | 0.1833      | 3.09275e+11 | 3.09275e+11 | 18653471415 | 6.1117      | NA          | NA          | NA          | NA          | NA          | \n",
       "| 15.1111     | 14.5636     | 15.0316     | 42007318    | 708179241   |  0.3886     |  2.6538     | 16.8585     | 0.2252      | 3.17482e+11 | 3.17482e+11 | 18653471415 | 6.2739      | NA          | NA          | NA          | NA          | NA          | \n",
       "| 15.1641     | 14.7667     | 15.0405     | 23558971    | 400445071   |  0.0088     |  0.0588     | 16.9976     | 0.1263      | 3.17669e+11 | 3.17669e+11 | 18653471415 | 6.2775      | NA          | NA          | NA          | NA          | NA          | \n",
       "| 15.1376     | 14.4841     | 14.7137     | 38279766    | 643611762   | -0.3268     | -2.1726     | 16.8134     | 0.2052      | 3.10767e+11 | 3.10767e+11 | 18653471415 | 6.1412      | NA          | NA          | NA          | NA          | NA          | \n",
       "| 14.9963     | 14.5812     | 14.7314     | 44291307    | 742640743   |  0.0177     |  0.1200     | 16.7672     | 0.2374      | 3.11140e+11 | 3.11140e+11 | 18653471415 | 6.1485      | NA          | NA          | NA          | NA          | NA          | \n",
       "| 14.8550     | 14.0248     | 14.6430     | 38902180    | 643984171   | -0.0883     | -0.5995     | 16.5539     | 0.2086      | 3.09275e+11 | 3.09275e+11 | 18653471415 | 6.1117      | NA          | NA          | NA          | NA          | NA          | \n",
       "| 15.0581     | 14.4929     | 14.9257     | 47429000    | 799493381   |  0.2826     |  1.9300     | 16.8566     | 0.2543      | 3.15244e+11 | 3.15244e+11 | 18653471415 | 6.2296      | NA          | NA          | NA          | NA          | NA          | \n",
       "| 15.0140     | 14.4929     | 14.5724     | 29139596    | 485275132   | -0.3533     | -2.3669     | 16.6535     | 0.1562      | 3.07782e+11 | 3.07782e+11 | 18653471415 | 6.0822      | NA          | NA          | NA          | NA          | NA          | \n",
       "| 14.9610     | 14.5371     | 14.8020     | 25380981    | 425396889   |  0.2296     |  1.5758     | 16.7605     | 0.1361      | 3.12632e+11 | 3.12632e+11 | 18653471415 | 6.1780      | NA          | NA          | NA          | NA          | NA          | \n",
       "| 14.7137     | 14.5282     | 14.6695     | 27779183    | 459255616   | -0.1325     | -0.8950     | 16.5324     | 0.1489      | 3.09834e+11 | 3.09834e+11 | 18653471415 | 6.1227      | NA          | NA          | NA          | NA          | NA          | \n",
       "| 15.2966     | 14.6872     | 15.2789     | 47162860    | 799283799   |  0.6094     |  4.1541     | 16.9473     | 0.2528      | 3.22705e+11 | 3.22705e+11 | 18653471415 | 6.3771      | NA          | NA          | NA          | NA          | NA          | \n",
       "| 16.2416     | 15.1465     | 16.2328     | 78413454    | 1401156041  |  0.9538     |  6.2428     | 17.8688     | 0.4204      | 3.42851e+11 | 3.42851e+11 | 18653471415 | 6.7752      | NA          | NA          | NA          | NA          | NA          | \n",
       "| 16.3211     | 15.7205     | 16.2946     | 67296317    | 1221398339  |  0.0618     |  0.3808     | 18.1496     | 0.3608      | 3.44157e+11 | 3.44157e+11 | 18653471415 | 6.8010      | NA          | NA          | NA          | NA          | NA          | \n",
       "| 15.4821     | 14.6695     | 14.9875     | 98240322    | 1657158636  | -1.3071     | -8.0217     | 16.8684     | 0.5267      | 3.16549e+11 | 3.16549e+11 | 18653471415 | 6.2554      | NA          | NA          | NA          | NA          | NA          | \n",
       "| 15.4291     | 14.8550     | 14.8903     | 56922239    | 973317374   | -0.0971     | -0.6482     | 17.0991     | 0.3052      | 3.14498e+11 | 3.14498e+11 | 18653471415 | 6.2149      | NA          | NA          | NA          | NA          | NA          | \n",
       "| 15.1818     | 14.8462     | 15.0316     | 37540932    | 638223050   |  0.1413     |  0.9490     | 17.0007     | 0.2013      | 3.17482e+11 | 3.17482e+11 | 18653471415 | 6.2739      | NA          | NA          | NA          | NA          | NA          | \n",
       "| 15.9590     | 14.9345     | 15.9236     | 108404378   | 1924212601  |  0.8920     |  5.9342     | 17.7503     | 0.5811      | 3.36322e+11 | 3.36322e+11 | 18653471415 | 6.6462      | NA          | NA          | NA          | NA          | NA          | \n",
       "| ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | \n",
       "| 16.00       | 15.83       | 15.96       | 19902006    | 316984958   |  0.08       |  0.5038     | 15.9273     | 0.0921      | 3.45028e+11 | 3.45028e+11 | 21618279922 | 6.4978      | NA          | NA          | NA          | NA          | NA          | \n",
       "| 16.13       | 15.90       | 16.04       | 18997369    | 304990151   |  0.08       |  0.5013     | 16.0543     | 0.0879      | 3.46757e+11 | 3.46757e+11 | 21618279922 | 6.5304      | NA          | NA          | NA          | NA          | NA          | \n",
       "| 16.13       | 15.97       | 16.01       | 13212969    | 211750766   | -0.03       | -0.1870     | 16.026      | 0.0611      | 3.46109e+11 | 3.46109e+11 | 21618279922 | 6.5182      | NA          | NA          | NA          | NA          | NA          | \n",
       "| 16.11       | 15.80       | 15.87       | 23446792    | 372794465   | -0.14       | -0.8745     | 15.8996     | 0.1085      | 3.43082e+11 | 3.43082e+11 | 21618279922 | 6.4612      | NA          | NA          | NA          | NA          | NA          | \n",
       "| 15.90       | 15.72       | 15.81       | 23645144    | 373665115   | -0.06       | -0.3781     | 15.803      | 0.1094      | 3.41785e+11 | 3.41785e+11 | 21618279922 | 6.4368      | NA          | NA          | NA          | NA          | NA          | \n",
       "| 16.05       | 15.77       | 16.01       | 24187120    | 385793421   |  0.20       |  1.2650     | 15.9504     | 0.1119      | 3.46109e+11 | 3.46109e+11 | 21618279922 | 6.5182      | NA          | NA          | NA          | NA          | NA          | \n",
       "| 16.20       | 15.89       | 16.16       | 31036271    | 499121565   |  0.15       |  0.9369     | 16.0819     | 0.1436      | 3.49351e+11 | 3.49351e+11 | 21618279922 | 6.5792      | NA          | NA          | NA          | NA          | NA          | \n",
       "| 16.18       | 16.03       | 16.10       | 22335442    | 359361840   | -0.06       | -0.3713     | 16.0893     | 0.1033      | 3.48054e+11 | 3.48054e+11 | 21618279922 | 6.5548      | NA          | NA          | NA          | NA          | NA          | \n",
       "| 16.16       | 16.02       | 16.10       | 20126948    | 323821647   |  0.00       |  0.0000     | 16.089      | 0.0931      | 3.48054e+11 | 3.48054e+11 | 21618279922 | 6.5548      | NA          | NA          | NA          | NA          | NA          | \n",
       "| 16.12       | 15.94       | 15.97       | 16154024    | 258662668   | -0.13       | -0.8075     | 16.0123     | 0.0747      | 3.45244e+11 | 3.45244e+11 | 21618279922 | 6.5019      | NA          | NA          | NA          | NA          | NA          | \n",
       "| 15.99       | 15.81       | 15.89       | 18611375    | 295381671   | -0.08       | -0.5009     | 15.871      | 0.0861      | 3.43514e+11 | 3.43514e+11 | 21618279922 | 6.4693      | NA          | NA          | NA          | NA          | NA          | \n",
       "| 15.96       | 15.75       | 15.89       | 22210541    | 352357729   |  0.00       |  0.0000     | 15.8644     | 0.1027      | 3.43514e+11 | 3.43514e+11 | 21618279922 | 6.4693      | NA          | NA          | NA          | NA          | NA          | \n",
       "| 15.89       | 15.73       | 15.75       | 23426650    | 369388222   | -0.14       | -0.8811     | 15.7679     | 0.1084      | 3.40488e+11 | 3.40488e+11 | 21618279922 | 6.4123      | NA          | NA          | NA          | NA          | NA          | \n",
       "| 15.78       | 15.42       | 15.51       | 40156553    | 625510632   | -0.24       | -1.5238     | 15.5768     | 0.1858      | 3.35300e+11 | 3.35300e+11 | 21618279922 | 6.3146      | NA          | NA          | NA          | NA          | NA          | \n",
       "| 15.60       | 15.30       | 15.56       | 36739448    | 566536789   |  0.05       |  0.3224     | 15.4204     | 0.1699      | 3.36380e+11 | 3.36380e+11 | 21618279922 | 6.3350      | NA          | NA          | NA          | NA          | NA          | \n",
       "| 15.52       | 15.30       | 15.30       | 22889980    | 351624622   | -0.26       | -1.6710     | 15.3615     | 0.1059      | 3.30760e+11 | 3.30760e+11 | 21618279922 | 6.2291      | NA          | NA          | NA          | NA          | NA          | \n",
       "| 15.27       | 15.11       | 15.11       | 24455407    | 371021507   | -0.19       | -1.2418     | 15.1713     | 0.1131      | 3.26652e+11 | 3.26652e+11 | 21618279922 | 6.1518      | NA          | NA          | NA          | NA          | NA          | \n",
       "| 15.14       | 14.90       | 14.91       | 41061406    | 614436383   | -0.20       | -1.3236     | 14.9638     | 0.1899      | 3.22329e+11 | 3.22329e+11 | 21618279922 | 6.0703      | NA          | NA          | NA          | NA          | NA          | \n",
       "| 15.07       | 14.85       | 15.05       | 22688358    | 340453104   |  0.14       |  0.9390     | 15.0056     | 0.1049      | 3.25355e+11 | 3.25355e+11 | 21618279922 | 6.1273      | NA          | NA          | NA          | NA          | NA          | \n",
       "| 15.11       | 14.91       | 15.00       | 17627803    | 264649933   | -0.05       | -0.3322     | 15.0132     | 0.0815      | 3.24274e+11 | 3.24274e+11 | 21618279922 | 6.1070      | NA          | NA          | NA          | NA          | NA          | \n",
       "| 15.10       | 14.99       | 15.05       | 12975919    | 195296862   |  0.05       |  0.3333     | 15.0507     | 0.0600      | 3.25355e+11 | 3.25355e+11 | 21618279922 | 6.1273      | NA          | NA          | NA          | NA          | NA          | \n",
       "| 15.11       | 15.00       | 15.05       | 14939871    | 225022668   |  0.00       |  0.0000     | 15.0619     | 0.0691      | 3.25355e+11 | 3.25355e+11 | 21618279922 | 6.1273      | NA          | NA          | NA          | NA          | NA          | \n",
       "| 15.25       | 15.03       | 15.21       | 22887645    | 345791526   |  0.16       |  1.0631     | 15.1082     | 0.1059      | 3.28814e+11 | 3.28814e+11 | 21618279922 | 6.1925      | NA          | NA          | NA          | NA          | NA          | \n",
       "| 15.22       | 15.08       | 15.21       | 15718509    | 238419161   |  0.00       |  0.0000     | 15.1681     | 0.0727      | 3.28814e+11 | 3.28814e+11 | 21618279922 | 6.1925      | NA          | NA          | NA          | NA          | NA          | \n",
       "| 15.22       | 15.13       | 15.16       | 12607509    | 191225527   | -0.05       | -0.3287     | 15.1676     | 0.0583      | 3.27733e+11 | 3.27733e+11 | 21618279922 | 6.1721      | NA          | NA          | NA          | NA          | NA          | \n",
       "| 15.16       | 15.05       | 15.08       | 14247943    | 215130847   | -0.08       | -0.5277     | 15.0991     | 0.0659      | 3.26004e+11 | 3.26004e+11 | 21618279922 | 6.1395      | NA          | NA          | NA          | NA          | NA          | \n",
       "| 15.07       | 14.90       | 14.98       | 19477788    | 291839737   | -0.10       | -0.6631     | 14.9832     | 0.0901      | 3.23842e+11 | 3.23842e+11 | 21618279922 | 6.0988      | NA          | NA          | NA          | NA          | NA          | \n",
       "| 14.98       | 14.52       | 14.92       | 40194577    | 592160198   | -0.06       | -0.4005     | 14.7323     | 0.1859      | 3.22545e+11 | 3.22545e+11 | 21618279922 | 6.0744      | NA          | NA          | NA          | NA          | NA          | \n",
       "| 14.90       | 14.51       | 14.86       | 43568576    | 638781010   | -0.06       | -0.4021     | 14.6615     | 0.2015      | 3.21248e+11 | 3.21248e+11 | 21618279922 | 6.0500      | NA          | NA          | NA          | NA          | NA          | \n",
       "| 14.84       | 14.66       | 14.76       | 19225492    | 283864640   | -0.10       | -0.6729     | 14.765      | 0.0889      | 3.19086e+11 | 3.19086e+11 | 21618279922 | 6.0093      | NA          | NA          | NA          | NA          | NA          | \n",
       "\n",
       "\n"
      ],
      "text/plain": [
       "    ﻿代码    简称    日期    前收盘价(元) 开盘价(元) 最高价(元) 最低价(元)\n",
       "1   16.1444 15.4997 15.7205 42240610     754425783  -0.4151    -2.5725   \n",
       "2   15.9501 15.3672 15.8618 58054793     1034181474  0.1413     0.8989   \n",
       "3   16.0208 15.6234 15.9855 46772653     838667398   0.1236     0.7795   \n",
       "4   15.8088 15.3672 15.4644 11350479     199502702  -0.5211    -3.2597   \n",
       "5   15.7912 14.9345 15.4467 71918296     1262105060 -0.0177    -0.1142   \n",
       "6   15.4114 14.9786 15.0581 90177135     1550155933 -0.3886    -2.5157   \n",
       "7   15.4732 15.0846 15.4114 55374454     964061502   0.3533     2.3460   \n",
       "8   15.8088 15.3231 15.3584 47869312     843717365  -0.0530    -0.3438   \n",
       "9   15.8883 14.9168 15.8265 54838833     966117848   0.4681     3.0477   \n",
       "10  16.0296 15.4732 15.5262 46723139     836146426  -0.3003    -1.8973   \n",
       "11  15.8883 15.2966 15.6145 32729006     583291559   0.0883     0.5688   \n",
       "12  15.7912 15.4556 15.6940 29807159     527753175   0.0795     0.5090   \n",
       "13  15.6322 15.0846 15.2348 35968636     623546924  -0.4593    -2.9263   \n",
       "14  15.4202 14.5724 14.6430 34197115     582845476  -0.5917    -3.8841   \n",
       "15  15.1111 14.5636 15.0316 42007318     708179241   0.3886     2.6538   \n",
       "16  15.1641 14.7667 15.0405 23558971     400445071   0.0088     0.0588   \n",
       "17  15.1376 14.4841 14.7137 38279766     643611762  -0.3268    -2.1726   \n",
       "18  14.9963 14.5812 14.7314 44291307     742640743   0.0177     0.1200   \n",
       "19  14.8550 14.0248 14.6430 38902180     643984171  -0.0883    -0.5995   \n",
       "20  15.0581 14.4929 14.9257 47429000     799493381   0.2826     1.9300   \n",
       "21  15.0140 14.4929 14.5724 29139596     485275132  -0.3533    -2.3669   \n",
       "22  14.9610 14.5371 14.8020 25380981     425396889   0.2296     1.5758   \n",
       "23  14.7137 14.5282 14.6695 27779183     459255616  -0.1325    -0.8950   \n",
       "24  15.2966 14.6872 15.2789 47162860     799283799   0.6094     4.1541   \n",
       "25  16.2416 15.1465 16.2328 78413454     1401156041  0.9538     6.2428   \n",
       "26  16.3211 15.7205 16.2946 67296317     1221398339  0.0618     0.3808   \n",
       "27  15.4821 14.6695 14.9875 98240322     1657158636 -1.3071    -8.0217   \n",
       "28  15.4291 14.8550 14.8903 56922239     973317374  -0.0971    -0.6482   \n",
       "29  15.1818 14.8462 15.0316 37540932     638223050   0.1413     0.9490   \n",
       "30  15.9590 14.9345 15.9236 108404378    1924212601  0.8920     5.9342   \n",
       "... ...     ...     ...     ...          ...        ...        ...       \n",
       "280 16.00   15.83   15.96   19902006     316984958   0.08       0.5038   \n",
       "281 16.13   15.90   16.04   18997369     304990151   0.08       0.5013   \n",
       "282 16.13   15.97   16.01   13212969     211750766  -0.03      -0.1870   \n",
       "283 16.11   15.80   15.87   23446792     372794465  -0.14      -0.8745   \n",
       "284 15.90   15.72   15.81   23645144     373665115  -0.06      -0.3781   \n",
       "285 16.05   15.77   16.01   24187120     385793421   0.20       1.2650   \n",
       "286 16.20   15.89   16.16   31036271     499121565   0.15       0.9369   \n",
       "287 16.18   16.03   16.10   22335442     359361840  -0.06      -0.3713   \n",
       "288 16.16   16.02   16.10   20126948     323821647   0.00       0.0000   \n",
       "289 16.12   15.94   15.97   16154024     258662668  -0.13      -0.8075   \n",
       "290 15.99   15.81   15.89   18611375     295381671  -0.08      -0.5009   \n",
       "291 15.96   15.75   15.89   22210541     352357729   0.00       0.0000   \n",
       "292 15.89   15.73   15.75   23426650     369388222  -0.14      -0.8811   \n",
       "293 15.78   15.42   15.51   40156553     625510632  -0.24      -1.5238   \n",
       "294 15.60   15.30   15.56   36739448     566536789   0.05       0.3224   \n",
       "295 15.52   15.30   15.30   22889980     351624622  -0.26      -1.6710   \n",
       "296 15.27   15.11   15.11   24455407     371021507  -0.19      -1.2418   \n",
       "297 15.14   14.90   14.91   41061406     614436383  -0.20      -1.3236   \n",
       "298 15.07   14.85   15.05   22688358     340453104   0.14       0.9390   \n",
       "299 15.11   14.91   15.00   17627803     264649933  -0.05      -0.3322   \n",
       "300 15.10   14.99   15.05   12975919     195296862   0.05       0.3333   \n",
       "301 15.11   15.00   15.05   14939871     225022668   0.00       0.0000   \n",
       "302 15.25   15.03   15.21   22887645     345791526   0.16       1.0631   \n",
       "303 15.22   15.08   15.21   15718509     238419161   0.00       0.0000   \n",
       "304 15.22   15.13   15.16   12607509     191225527  -0.05      -0.3287   \n",
       "305 15.16   15.05   15.08   14247943     215130847  -0.08      -0.5277   \n",
       "306 15.07   14.90   14.98   19477788     291839737  -0.10      -0.6631   \n",
       "307 14.98   14.52   14.92   40194577     592160198  -0.06      -0.4005   \n",
       "308 14.90   14.51   14.86   43568576     638781010  -0.06      -0.4021   \n",
       "309 14.84   14.66   14.76   19225492     283864640  -0.10      -0.6729   \n",
       "    收盘价(元) 成交量(股) 成交金额(元) 涨跌(元)    涨跌幅(%)   均价(元)\n",
       "1   17.8602    0.2264     3.32032e+11  3.32032e+11 18653471415 6.5614  \n",
       "2   17.8139    0.3112     3.35016e+11  3.35016e+11 18653471415 6.6204  \n",
       "3   17.9307    0.2507     3.37628e+11  3.37628e+11 18653471415 6.6720  \n",
       "4   17.5766    0.0608     3.26622e+11  3.26622e+11 18653471415 6.4545  \n",
       "5   17.5492    0.3855     3.26249e+11  3.26249e+11 18653471415 6.4471  \n",
       "6   17.1901    0.4834     3.18042e+11  3.18042e+11 18653471415 6.2849  \n",
       "7   17.4099    0.2969     3.25503e+11  3.25503e+11 18653471415 6.4324  \n",
       "8   17.6254    0.2566     3.24384e+11  3.24384e+11 18653471415 6.4102  \n",
       "9   17.6174    0.2940     3.34270e+11  3.34270e+11 18653471415 6.6056  \n",
       "10  17.8958    0.2505     3.27928e+11  3.27928e+11 18653471415 6.4803  \n",
       "11  17.8219    0.1755     3.29793e+11  3.29793e+11 18653471415 6.5171  \n",
       "12  17.7056    0.1598     3.31472e+11  3.31472e+11 18653471415 6.5503  \n",
       "13  17.3359    0.1928     3.21772e+11  3.21772e+11 18653471415 6.3586  \n",
       "14  17.0437    0.1833     3.09275e+11  3.09275e+11 18653471415 6.1117  \n",
       "15  16.8585    0.2252     3.17482e+11  3.17482e+11 18653471415 6.2739  \n",
       "16  16.9976    0.1263     3.17669e+11  3.17669e+11 18653471415 6.2775  \n",
       "17  16.8134    0.2052     3.10767e+11  3.10767e+11 18653471415 6.1412  \n",
       "18  16.7672    0.2374     3.11140e+11  3.11140e+11 18653471415 6.1485  \n",
       "19  16.5539    0.2086     3.09275e+11  3.09275e+11 18653471415 6.1117  \n",
       "20  16.8566    0.2543     3.15244e+11  3.15244e+11 18653471415 6.2296  \n",
       "21  16.6535    0.1562     3.07782e+11  3.07782e+11 18653471415 6.0822  \n",
       "22  16.7605    0.1361     3.12632e+11  3.12632e+11 18653471415 6.1780  \n",
       "23  16.5324    0.1489     3.09834e+11  3.09834e+11 18653471415 6.1227  \n",
       "24  16.9473    0.2528     3.22705e+11  3.22705e+11 18653471415 6.3771  \n",
       "25  17.8688    0.4204     3.42851e+11  3.42851e+11 18653471415 6.7752  \n",
       "26  18.1496    0.3608     3.44157e+11  3.44157e+11 18653471415 6.8010  \n",
       "27  16.8684    0.5267     3.16549e+11  3.16549e+11 18653471415 6.2554  \n",
       "28  17.0991    0.3052     3.14498e+11  3.14498e+11 18653471415 6.2149  \n",
       "29  17.0007    0.2013     3.17482e+11  3.17482e+11 18653471415 6.2739  \n",
       "30  17.7503    0.5811     3.36322e+11  3.36322e+11 18653471415 6.6462  \n",
       "... ...        ...        ...          ...         ...         ...     \n",
       "280 15.9273    0.0921     3.45028e+11  3.45028e+11 21618279922 6.4978  \n",
       "281 16.0543    0.0879     3.46757e+11  3.46757e+11 21618279922 6.5304  \n",
       "282 16.026     0.0611     3.46109e+11  3.46109e+11 21618279922 6.5182  \n",
       "283 15.8996    0.1085     3.43082e+11  3.43082e+11 21618279922 6.4612  \n",
       "284 15.803     0.1094     3.41785e+11  3.41785e+11 21618279922 6.4368  \n",
       "285 15.9504    0.1119     3.46109e+11  3.46109e+11 21618279922 6.5182  \n",
       "286 16.0819    0.1436     3.49351e+11  3.49351e+11 21618279922 6.5792  \n",
       "287 16.0893    0.1033     3.48054e+11  3.48054e+11 21618279922 6.5548  \n",
       "288 16.089     0.0931     3.48054e+11  3.48054e+11 21618279922 6.5548  \n",
       "289 16.0123    0.0747     3.45244e+11  3.45244e+11 21618279922 6.5019  \n",
       "290 15.871     0.0861     3.43514e+11  3.43514e+11 21618279922 6.4693  \n",
       "291 15.8644    0.1027     3.43514e+11  3.43514e+11 21618279922 6.4693  \n",
       "292 15.7679    0.1084     3.40488e+11  3.40488e+11 21618279922 6.4123  \n",
       "293 15.5768    0.1858     3.35300e+11  3.35300e+11 21618279922 6.3146  \n",
       "294 15.4204    0.1699     3.36380e+11  3.36380e+11 21618279922 6.3350  \n",
       "295 15.3615    0.1059     3.30760e+11  3.30760e+11 21618279922 6.2291  \n",
       "296 15.1713    0.1131     3.26652e+11  3.26652e+11 21618279922 6.1518  \n",
       "297 14.9638    0.1899     3.22329e+11  3.22329e+11 21618279922 6.0703  \n",
       "298 15.0056    0.1049     3.25355e+11  3.25355e+11 21618279922 6.1273  \n",
       "299 15.0132    0.0815     3.24274e+11  3.24274e+11 21618279922 6.1070  \n",
       "300 15.0507    0.0600     3.25355e+11  3.25355e+11 21618279922 6.1273  \n",
       "301 15.0619    0.0691     3.25355e+11  3.25355e+11 21618279922 6.1273  \n",
       "302 15.1082    0.1059     3.28814e+11  3.28814e+11 21618279922 6.1925  \n",
       "303 15.1681    0.0727     3.28814e+11  3.28814e+11 21618279922 6.1925  \n",
       "304 15.1676    0.0583     3.27733e+11  3.27733e+11 21618279922 6.1721  \n",
       "305 15.0991    0.0659     3.26004e+11  3.26004e+11 21618279922 6.1395  \n",
       "306 14.9832    0.0901     3.23842e+11  3.23842e+11 21618279922 6.0988  \n",
       "307 14.7323    0.1859     3.22545e+11  3.22545e+11 21618279922 6.0744  \n",
       "308 14.6615    0.2015     3.21248e+11  3.21248e+11 21618279922 6.0500  \n",
       "309 14.765     0.0889     3.19086e+11  3.19086e+11 21618279922 6.0093  \n",
       "    换手率(%) A股流通市值(元) 总市值(元) A股流通股本(股) 市盈率\n",
       "1   NA        NA              NA         NA              NA    \n",
       "2   NA        NA              NA         NA              NA    \n",
       "3   NA        NA              NA         NA              NA    \n",
       "4   NA        NA              NA         NA              NA    \n",
       "5   NA        NA              NA         NA              NA    \n",
       "6   NA        NA              NA         NA              NA    \n",
       "7   NA        NA              NA         NA              NA    \n",
       "8   NA        NA              NA         NA              NA    \n",
       "9   NA        NA              NA         NA              NA    \n",
       "10  NA        NA              NA         NA              NA    \n",
       "11  NA        NA              NA         NA              NA    \n",
       "12  NA        NA              NA         NA              NA    \n",
       "13  NA        NA              NA         NA              NA    \n",
       "14  NA        NA              NA         NA              NA    \n",
       "15  NA        NA              NA         NA              NA    \n",
       "16  NA        NA              NA         NA              NA    \n",
       "17  NA        NA              NA         NA              NA    \n",
       "18  NA        NA              NA         NA              NA    \n",
       "19  NA        NA              NA         NA              NA    \n",
       "20  NA        NA              NA         NA              NA    \n",
       "21  NA        NA              NA         NA              NA    \n",
       "22  NA        NA              NA         NA              NA    \n",
       "23  NA        NA              NA         NA              NA    \n",
       "24  NA        NA              NA         NA              NA    \n",
       "25  NA        NA              NA         NA              NA    \n",
       "26  NA        NA              NA         NA              NA    \n",
       "27  NA        NA              NA         NA              NA    \n",
       "28  NA        NA              NA         NA              NA    \n",
       "29  NA        NA              NA         NA              NA    \n",
       "30  NA        NA              NA         NA              NA    \n",
       "... ...       ...             ...        ...             ...   \n",
       "280 NA        NA              NA         NA              NA    \n",
       "281 NA        NA              NA         NA              NA    \n",
       "282 NA        NA              NA         NA              NA    \n",
       "283 NA        NA              NA         NA              NA    \n",
       "284 NA        NA              NA         NA              NA    \n",
       "285 NA        NA              NA         NA              NA    \n",
       "286 NA        NA              NA         NA              NA    \n",
       "287 NA        NA              NA         NA              NA    \n",
       "288 NA        NA              NA         NA              NA    \n",
       "289 NA        NA              NA         NA              NA    \n",
       "290 NA        NA              NA         NA              NA    \n",
       "291 NA        NA              NA         NA              NA    \n",
       "292 NA        NA              NA         NA              NA    \n",
       "293 NA        NA              NA         NA              NA    \n",
       "294 NA        NA              NA         NA              NA    \n",
       "295 NA        NA              NA         NA              NA    \n",
       "296 NA        NA              NA         NA              NA    \n",
       "297 NA        NA              NA         NA              NA    \n",
       "298 NA        NA              NA         NA              NA    \n",
       "299 NA        NA              NA         NA              NA    \n",
       "300 NA        NA              NA         NA              NA    \n",
       "301 NA        NA              NA         NA              NA    \n",
       "302 NA        NA              NA         NA              NA    \n",
       "303 NA        NA              NA         NA              NA    \n",
       "304 NA        NA              NA         NA              NA    \n",
       "305 NA        NA              NA         NA              NA    \n",
       "306 NA        NA              NA         NA              NA    \n",
       "307 NA        NA              NA         NA              NA    \n",
       "308 NA        NA              NA         NA              NA    \n",
       "309 NA        NA              NA         NA              NA    "
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "lead(df,5)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 77.使用expending函数计算开盘价的移动窗口均值"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 88,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "#R中没有expanding完全一致的函数\n",
    "#考虑到expanding实际功能就是累积均值\n",
    "#可以用cummean\n",
    "#但cummean的功能和我预想的不同\n",
    "#可能是包之间相互干扰\n",
    "#最后采用cumsum/1:n的形式完成本题\n",
    "\n",
    "res <- df %>%\n",
    "  transmute(cummean = cumsum(`开盘价(元)`)/1:dim(df)[1])"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 78.绘制上一题的移动均值与原始数据折线图"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "collapsed": false
   },
   "outputs": [],
   "source": [
    "library(tidyr)\n",
    "df %>%\n",
    "  cbind(res) %>%\n",
    "  dplyr::rename(Opening_Price = `开盘价(元)`,\n",
    "         Expanding_Open_Mean = cummean) %>%\n",
    "  select(日期,Opening_Price,Expanding_Open_Mean) %>%\n",
    "  pivot_longer(c(Opening_Price,Expanding_Open_Mean),\n",
    "               names_to = 'type',\n",
    "               values_to ='price') %>%\n",
    "  ggplot(aes(日期,price,color = type)) +\n",
    "  geom_line(size=1.2) +\n",
    "  scale_color_manual(values=c('orange','steelblue')) +\n",
    "  theme_bw() +\n",
    "  theme(\n",
    "    panel.grid.major = element_blank(),\n",
    "    panel.grid.minor = element_blank(),\n",
    "    legend.title = element_blank(),\n",
    "    legend.position = c(0.9, 0.9)\n",
    "  )"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 79.计算布林指标"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "collapsed": false
   },
   "outputs": [],
   "source": [
    "df <- df %>%\n",
    "  mutate(avg_20 = roll_mean(`收盘价(元)`,n = 20,align=\"right\",fill = NA),\n",
    "         upper_bound = avg_20 + 2 * roll_sd(`收盘价(元)`,n = 20,align=\"right\",fill = NA),\n",
    "         lower_bound = avg_20 - 2 * roll_sd(`收盘价(元)`,n = 20,align=\"right\",fill = NA))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 80.计算布林线并绘制"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "collapsed": false
   },
   "outputs": [],
   "source": [
    "df %>%\n",
    "  dplyr::rename(former_30_days_rolling_Close_mean = avg_20,\n",
    "                Closing_Price = `收盘价(元)`) %>%\n",
    "  select(日期,Closing_Price,\n",
    "           former_30_days_rolling_Close_mean,upper_bound,lower_bound) %>%\n",
    "  pivot_longer(c(Closing_Price,former_30_days_rolling_Close_mean,upper_bound,lower_bound),\n",
    "               names_to = 'type',\n",
    "               values_to ='price') %>%\n",
    "  ggplot(aes(日期,price,color = type)) +\n",
    "  geom_line(size=1.2) +\n",
    "  scale_color_manual(values=c('steelblue','orange','red','green')) +\n",
    "  theme_bw() +\n",
    "  theme(\n",
    "    panel.grid.major = element_blank(),\n",
    "    panel.grid.minor = element_blank(),\n",
    "    legend.title = element_blank(),\n",
    "    legend.position = c(0.6, 0.2)\n",
    "  )"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "collapsed": true,
    "deletable": true,
    "editable": true
   },
   "source": [
    "## 第四期｜科学计算：81-100\n",
    "备注：在Pandas120题中，本期为NumPy结合，R中则没有NumPy，\n",
    "\n",
    "尽可能保持一致\n",
    "详情点击：https://mp.weixin.qq.com/s/WvgOlFGK0FToobl9ws2oSQ"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "collapsed": true,
    "deletable": true,
    "editable": true
   },
   "source": [
    "### 81.查看包的版本"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 92,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "[1] ‘1.1.1’"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": [
       "[1] ‘0.5.0’"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "packageVersion(\"tidyverse\")\n",
    "\n",
    "packageVersion(\"dplyr\")\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 82.从数组创建DataFrame"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 93,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "df1 <- sapply(20,function(n) {\n",
    "  replicate(n,sample(1:100,1))\n",
    "}) %>%\n",
    "  as.data.frame(.) %>%\n",
    "  dplyr::rename(`0` = V1)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 83.生成20个0-100固定步长的数"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "collapsed": false
   },
   "outputs": [],
   "source": [
    "df2 <- as.data.frame(seq(0,99,5)) %>%\n",
    "  dplyr::rename(`0` = \"seq(0, 99, 5)\")"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 84.生成20个指定分布(如标准正态分布)的数"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "collapsed": false
   },
   "outputs": [],
   "source": [
    "df3 <- as.data.frame(rnorm(20,0,1)) %>%\n",
    "  dplyr::rename(`0` = \"rnorm(20, 0, 1)\")"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 85.将df1，df2，df3按照行合并为新DataFrame"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "df <- rbind(df1,df2,df3)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 86.将df1，df2，df3按照列合并为新DataFrame"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "df <- cbind(df1,df2,df3)\n",
    "names(df) <- c(0,1,2)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 87.查看df所有数据的最小值、25%分位数、中位数、75%分位数、最大值"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "summary(unlist(df))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 88.修改列名为col1,col2,col3"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "df <- df %>%\n",
    "  dplyr::rename(col1 = 1,\n",
    "                col2 = 2,\n",
    "                col3 = 3)\n",
    "# 或者用类似pandas的方法\n",
    "names(df) <- c('col1','col2','col3')"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 89.提取第一列中不在第二列出现的数字"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "df[!(df$col1 %in% df$col2),1]"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 90.提取第一列和第二列出现频率最高的三个数字"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "count(unlist(c(df$col1,df$col2))) %>%\n",
    "  arrange(desc(freq)) %>%\n",
    "  filter(row_number() <= 3)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 91.提取第一列中可以整除5的数字位置"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "which(df['col1'] %% 5==0)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 92.计算第一列数字前一个与后一个的差值"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "df %>%\n",
    "  summarise(col1 - lag(col1)) %>%\n",
    "  na.omit(.) # 不去NA也可以，pandas没有去除"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 93.将col1,col2,clo3三列顺序颠倒"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "df %>%\n",
    "  select(col3,col2,everything())"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 94.提取第一列位置在1,10,15的数字"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "df[c(1,10,15) + 1,1]"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 95.找第一列的局部最大值位置,即比它前一个与后一个数字的都大的数字"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "res1 <- which((df$col1 - lag(df$col1) > 0))\n",
    "res2 <- which((df$col1 - lead(df$col1) > 0))\n",
    "\n",
    "intersect(res1,res2)\n",
    "# [1] 3 5 7 12 14 17 19\n",
    "\n",
    "# 另一种方法，类似pandas的用符号判断\n",
    "\n",
    "res <- sign(df$col1 - lag(df$col1))\n",
    "\n",
    "which(res - lag(res) == -2) - 1\n",
    "# # [1] 3 5 7 12 14 17 19"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 96.按行计算df的每一行均值"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "rowMeans(df)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 97.对第二列计算移动平均值\n",
    "备注\n",
    "每次移动三个位置，不可以使用自定义函数"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "library(RcppRoll)\n",
    "\n",
    "df %>%\n",
    "  summarise(avg_3 = roll_mean(col2, n=3))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 98.将数据按照第三列值的大小升序排列"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "df <- df %>%\n",
    "  arrange(col3)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 99.将第一列大于50的数字修改为'高'"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "collapsed": true,
    "deletable": true,
    "editable": true
   },
   "outputs": [],
   "source": [
    "df[df$col1 > 50,1] <- '高'"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "collapsed": true,
    "deletable": true,
    "editable": true
   },
   "source": [
    "### 100.计算第一列与第二列之间的欧式距离"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "# 可以利用概念计算\n",
    "res <- (df$col1 - df$col2) ^ 2\n",
    "sqrt(sum(res))\n",
    "# [1] 197.0102\n",
    "\n",
    "# 也可以利用dist函数，但需要形成两个不同的观测\n",
    "dist(rbind(df$col1,df$col2))\n",
    "# 1\n",
    "# 2 197.0102\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "### 第五期｜一些补充：101-120"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "collapsed": true,
    "deletable": true,
    "editable": true
   },
   "source": [
    "### 101.从CSV文件中读取指定数据\n",
    "从数据1中的前10行中读取positionName, salary两列"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "collapsed": false
   },
   "outputs": [],
   "source": [
    "#一步读取文件的指定列用readr包或者原生函数都没办法\n",
    "#如果文件特别大又不想全部再选指定列可以用如下办法\n",
    "#基本思想先读取较少的数据获取列名\n",
    "#给目标列以外的列打上NULL导致第二次读取文件时NULL列丢失即可\n",
    "\n",
    "res <- read.csv('数据1.csv',encoding = 'GBK',nrows = 3)\n",
    "classes <- sapply(res, class)\n",
    "classes[-match(c('positionName','salary'),names(classes))] <-\n",
    "  rep('NULL', length(classes) - 2)\n",
    "\n",
    "df <- read.csv('数据1.csv',encoding = 'GBK',nrows = 10,\n",
    "               colClasses = classes)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 102.从数据2中读取数据并在读取数据时将薪资大于10000的为改为高"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 99,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Parsed with column specification:\n",
      "cols(\n",
      "  `﻿学历要求` = col_character(),\n",
      "  薪资水平 = col_integer()\n",
      ")\n"
     ]
    }
   ],
   "source": [
    "library(readr)\n",
    "\n",
    "df2 <- read_csv('数据2.csv') %>%\n",
    "  mutate('学历要求',\n",
    "         '薪资水平' = ifelse(\n",
    "           薪资水平 > 10000,'高','低'))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 103.从上一题数据中，对薪资水平列每隔20行进行一次抽样"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 100,
   "metadata": {
    "collapsed": false,
    "scrolled": true
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<table>\n",
       "<thead><tr><th scope=col>﻿学历要求</th><th scope=col>薪资水平</th></tr></thead>\n",
       "<tbody>\n",
       "\t<tr><td>本科</td><td>高  </td></tr>\n",
       "\t<tr><td>本科</td><td>高  </td></tr>\n",
       "\t<tr><td>本科</td><td>高  </td></tr>\n",
       "\t<tr><td>本科</td><td>高  </td></tr>\n",
       "\t<tr><td>本科</td><td>高  </td></tr>\n",
       "\t<tr><td>本科</td><td>高  </td></tr>\n",
       "\t<tr><td>本科</td><td>高  </td></tr>\n",
       "\t<tr><td>本科</td><td>高  </td></tr>\n",
       "\t<tr><td>硕士</td><td>高  </td></tr>\n",
       "\t<tr><td>硕士</td><td>高  </td></tr>\n",
       "\t<tr><td>本科</td><td>高  </td></tr>\n",
       "\t<tr><td>本科</td><td>高  </td></tr>\n",
       "\t<tr><td>本科</td><td>高  </td></tr>\n",
       "\t<tr><td>本科</td><td>高  </td></tr>\n",
       "\t<tr><td>硕士</td><td>低  </td></tr>\n",
       "\t<tr><td>本科</td><td>高  </td></tr>\n",
       "\t<tr><td>本科</td><td>高  </td></tr>\n",
       "\t<tr><td>本科</td><td>低  </td></tr>\n",
       "\t<tr><td>本科</td><td>高  </td></tr>\n",
       "\t<tr><td>本科</td><td>高  </td></tr>\n",
       "\t<tr><td>本科</td><td>高  </td></tr>\n",
       "\t<tr><td>本科</td><td>高  </td></tr>\n",
       "\t<tr><td>大专</td><td>高  </td></tr>\n",
       "\t<tr><td>本科</td><td>低  </td></tr>\n",
       "\t<tr><td>本科</td><td>高  </td></tr>\n",
       "\t<tr><td>硕士</td><td>高  </td></tr>\n",
       "\t<tr><td>本科</td><td>高  </td></tr>\n",
       "\t<tr><td>硕士</td><td>高  </td></tr>\n",
       "\t<tr><td>硕士</td><td>高  </td></tr>\n",
       "\t<tr><td>不限</td><td>高  </td></tr>\n",
       "\t<tr><td>本科</td><td>高  </td></tr>\n",
       "\t<tr><td>硕士</td><td>高  </td></tr>\n",
       "\t<tr><td>本科</td><td>高  </td></tr>\n",
       "\t<tr><td>本科</td><td>低  </td></tr>\n",
       "\t<tr><td>本科</td><td>低  </td></tr>\n",
       "\t<tr><td>硕士</td><td>高  </td></tr>\n",
       "\t<tr><td>硕士</td><td>高  </td></tr>\n",
       "\t<tr><td>硕士</td><td>高  </td></tr>\n",
       "\t<tr><td>本科</td><td>高  </td></tr>\n",
       "\t<tr><td>本科</td><td>高  </td></tr>\n",
       "\t<tr><td>硕士</td><td>高  </td></tr>\n",
       "\t<tr><td>本科</td><td>高  </td></tr>\n",
       "\t<tr><td>本科</td><td>高  </td></tr>\n",
       "\t<tr><td>硕士</td><td>低  </td></tr>\n",
       "\t<tr><td>本科</td><td>高  </td></tr>\n",
       "\t<tr><td>本科</td><td>高  </td></tr>\n",
       "\t<tr><td>本科</td><td>高  </td></tr>\n",
       "\t<tr><td>硕士</td><td>高  </td></tr>\n",
       "\t<tr><td>本科</td><td>高  </td></tr>\n",
       "\t<tr><td>本科</td><td>高  </td></tr>\n",
       "\t<tr><td>本科</td><td>高  </td></tr>\n",
       "\t<tr><td>本科</td><td>高  </td></tr>\n",
       "\t<tr><td>硕士</td><td>高  </td></tr>\n",
       "\t<tr><td>本科</td><td>高  </td></tr>\n",
       "\t<tr><td>硕士</td><td>高  </td></tr>\n",
       "\t<tr><td>硕士</td><td>高  </td></tr>\n",
       "\t<tr><td>硕士</td><td>高  </td></tr>\n",
       "\t<tr><td>硕士</td><td>高  </td></tr>\n",
       "</tbody>\n",
       "</table>\n"
      ],
      "text/latex": [
       "\\begin{tabular}{r|ll}\n",
       " ﻿学历要求 & 薪资水平\\\\\n",
       "\\hline\n",
       "\t 本科 & 高  \\\\\n",
       "\t 本科 & 高  \\\\\n",
       "\t 本科 & 高  \\\\\n",
       "\t 本科 & 高  \\\\\n",
       "\t 本科 & 高  \\\\\n",
       "\t 本科 & 高  \\\\\n",
       "\t 本科 & 高  \\\\\n",
       "\t 本科 & 高  \\\\\n",
       "\t 硕士 & 高  \\\\\n",
       "\t 硕士 & 高  \\\\\n",
       "\t 本科 & 高  \\\\\n",
       "\t 本科 & 高  \\\\\n",
       "\t 本科 & 高  \\\\\n",
       "\t 本科 & 高  \\\\\n",
       "\t 硕士 & 低  \\\\\n",
       "\t 本科 & 高  \\\\\n",
       "\t 本科 & 高  \\\\\n",
       "\t 本科 & 低  \\\\\n",
       "\t 本科 & 高  \\\\\n",
       "\t 本科 & 高  \\\\\n",
       "\t 本科 & 高  \\\\\n",
       "\t 本科 & 高  \\\\\n",
       "\t 大专 & 高  \\\\\n",
       "\t 本科 & 低  \\\\\n",
       "\t 本科 & 高  \\\\\n",
       "\t 硕士 & 高  \\\\\n",
       "\t 本科 & 高  \\\\\n",
       "\t 硕士 & 高  \\\\\n",
       "\t 硕士 & 高  \\\\\n",
       "\t 不限 & 高  \\\\\n",
       "\t 本科 & 高  \\\\\n",
       "\t 硕士 & 高  \\\\\n",
       "\t 本科 & 高  \\\\\n",
       "\t 本科 & 低  \\\\\n",
       "\t 本科 & 低  \\\\\n",
       "\t 硕士 & 高  \\\\\n",
       "\t 硕士 & 高  \\\\\n",
       "\t 硕士 & 高  \\\\\n",
       "\t 本科 & 高  \\\\\n",
       "\t 本科 & 高  \\\\\n",
       "\t 硕士 & 高  \\\\\n",
       "\t 本科 & 高  \\\\\n",
       "\t 本科 & 高  \\\\\n",
       "\t 硕士 & 低  \\\\\n",
       "\t 本科 & 高  \\\\\n",
       "\t 本科 & 高  \\\\\n",
       "\t 本科 & 高  \\\\\n",
       "\t 硕士 & 高  \\\\\n",
       "\t 本科 & 高  \\\\\n",
       "\t 本科 & 高  \\\\\n",
       "\t 本科 & 高  \\\\\n",
       "\t 本科 & 高  \\\\\n",
       "\t 硕士 & 高  \\\\\n",
       "\t 本科 & 高  \\\\\n",
       "\t 硕士 & 高  \\\\\n",
       "\t 硕士 & 高  \\\\\n",
       "\t 硕士 & 高  \\\\\n",
       "\t 硕士 & 高  \\\\\n",
       "\\end{tabular}\n"
      ],
      "text/markdown": [
       "\n",
       "﻿学历要求 | 薪资水平 | \n",
       "|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|\n",
       "| 本科 | 高   | \n",
       "| 本科 | 高   | \n",
       "| 本科 | 高   | \n",
       "| 本科 | 高   | \n",
       "| 本科 | 高   | \n",
       "| 本科 | 高   | \n",
       "| 本科 | 高   | \n",
       "| 本科 | 高   | \n",
       "| 硕士 | 高   | \n",
       "| 硕士 | 高   | \n",
       "| 本科 | 高   | \n",
       "| 本科 | 高   | \n",
       "| 本科 | 高   | \n",
       "| 本科 | 高   | \n",
       "| 硕士 | 低   | \n",
       "| 本科 | 高   | \n",
       "| 本科 | 高   | \n",
       "| 本科 | 低   | \n",
       "| 本科 | 高   | \n",
       "| 本科 | 高   | \n",
       "| 本科 | 高   | \n",
       "| 本科 | 高   | \n",
       "| 大专 | 高   | \n",
       "| 本科 | 低   | \n",
       "| 本科 | 高   | \n",
       "| 硕士 | 高   | \n",
       "| 本科 | 高   | \n",
       "| 硕士 | 高   | \n",
       "| 硕士 | 高   | \n",
       "| 不限 | 高   | \n",
       "| 本科 | 高   | \n",
       "| 硕士 | 高   | \n",
       "| 本科 | 高   | \n",
       "| 本科 | 低   | \n",
       "| 本科 | 低   | \n",
       "| 硕士 | 高   | \n",
       "| 硕士 | 高   | \n",
       "| 硕士 | 高   | \n",
       "| 本科 | 高   | \n",
       "| 本科 | 高   | \n",
       "| 硕士 | 高   | \n",
       "| 本科 | 高   | \n",
       "| 本科 | 高   | \n",
       "| 硕士 | 低   | \n",
       "| 本科 | 高   | \n",
       "| 本科 | 高   | \n",
       "| 本科 | 高   | \n",
       "| 硕士 | 高   | \n",
       "| 本科 | 高   | \n",
       "| 本科 | 高   | \n",
       "| 本科 | 高   | \n",
       "| 本科 | 高   | \n",
       "| 硕士 | 高   | \n",
       "| 本科 | 高   | \n",
       "| 硕士 | 高   | \n",
       "| 硕士 | 高   | \n",
       "| 硕士 | 高   | \n",
       "| 硕士 | 高   | \n",
       "\n",
       "\n"
      ],
      "text/plain": [
       "   ﻿学历要求 薪资水平\n",
       "1  本科     高      \n",
       "2  本科     高      \n",
       "3  本科     高      \n",
       "4  本科     高      \n",
       "5  本科     高      \n",
       "6  本科     高      \n",
       "7  本科     高      \n",
       "8  本科     高      \n",
       "9  硕士     高      \n",
       "10 硕士     高      \n",
       "11 本科     高      \n",
       "12 本科     高      \n",
       "13 本科     高      \n",
       "14 本科     高      \n",
       "15 硕士     低      \n",
       "16 本科     高      \n",
       "17 本科     高      \n",
       "18 本科     低      \n",
       "19 本科     高      \n",
       "20 本科     高      \n",
       "21 本科     高      \n",
       "22 本科     高      \n",
       "23 大专     高      \n",
       "24 本科     低      \n",
       "25 本科     高      \n",
       "26 硕士     高      \n",
       "27 本科     高      \n",
       "28 硕士     高      \n",
       "29 硕士     高      \n",
       "30 不限     高      \n",
       "31 本科     高      \n",
       "32 硕士     高      \n",
       "33 本科     高      \n",
       "34 本科     低      \n",
       "35 本科     低      \n",
       "36 硕士     高      \n",
       "37 硕士     高      \n",
       "38 硕士     高      \n",
       "39 本科     高      \n",
       "40 本科     高      \n",
       "41 硕士     高      \n",
       "42 本科     高      \n",
       "43 本科     高      \n",
       "44 硕士     低      \n",
       "45 本科     高      \n",
       "46 本科     高      \n",
       "47 本科     高      \n",
       "48 硕士     高      \n",
       "49 本科     高      \n",
       "50 本科     高      \n",
       "51 本科     高      \n",
       "52 本科     高      \n",
       "53 硕士     高      \n",
       "54 本科     高      \n",
       "55 硕士     高      \n",
       "56 硕士     高      \n",
       "57 硕士     高      \n",
       "58 硕士     高      "
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "df2[seq(1,dim(df2)[1],20),]"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 104.将数据取消使用科学计数法"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 101,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<table>\n",
       "<thead><tr><th scope=col>data</th></tr></thead>\n",
       "<tbody>\n",
       "\t<tr><td>0.000</td></tr>\n",
       "\t<tr><td>0.000</td></tr>\n",
       "\t<tr><td>0.000</td></tr>\n",
       "\t<tr><td>0.040</td></tr>\n",
       "\t<tr><td>0.000</td></tr>\n",
       "\t<tr><td>0.000</td></tr>\n",
       "\t<tr><td>0.000</td></tr>\n",
       "\t<tr><td>0.363</td></tr>\n",
       "\t<tr><td>0.000</td></tr>\n",
       "\t<tr><td>0.000</td></tr>\n",
       "</tbody>\n",
       "</table>\n"
      ],
      "text/latex": [
       "\\begin{tabular}{r|l}\n",
       " data\\\\\n",
       "\\hline\n",
       "\t 0.000\\\\\n",
       "\t 0.000\\\\\n",
       "\t 0.000\\\\\n",
       "\t 0.040\\\\\n",
       "\t 0.000\\\\\n",
       "\t 0.000\\\\\n",
       "\t 0.000\\\\\n",
       "\t 0.363\\\\\n",
       "\t 0.000\\\\\n",
       "\t 0.000\\\\\n",
       "\\end{tabular}\n"
      ],
      "text/markdown": [
       "\n",
       "data | \n",
       "|---|---|---|---|---|---|---|---|---|---|\n",
       "| 0.000 | \n",
       "| 0.000 | \n",
       "| 0.000 | \n",
       "| 0.040 | \n",
       "| 0.000 | \n",
       "| 0.000 | \n",
       "| 0.000 | \n",
       "| 0.363 | \n",
       "| 0.000 | \n",
       "| 0.000 | \n",
       "\n",
       "\n"
      ],
      "text/plain": [
       "   data \n",
       "1  0.000\n",
       "2  0.000\n",
       "3  0.000\n",
       "4  0.040\n",
       "5  0.000\n",
       "6  0.000\n",
       "7  0.000\n",
       "8  0.363\n",
       "9  0.000\n",
       "10 0.000"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "df <- tibble(data = runif(10)^10)\n",
    "round(df,3)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 105.将上一题的数据转换为百分数"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "collapsed": false
   },
   "outputs": [],
   "source": [
    "tibble(data = str_glue('{round(df$data * 100,2)}%'))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 106.查找上一题数据中第3大值的行号"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 103,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<table>\n",
       "<thead><tr><th scope=col>nrow</th></tr></thead>\n",
       "<tbody>\n",
       "\t<tr><td>5</td></tr>\n",
       "</tbody>\n",
       "</table>\n"
      ],
      "text/latex": [
       "\\begin{tabular}{r|l}\n",
       " nrow\\\\\n",
       "\\hline\n",
       "\t 5\\\\\n",
       "\\end{tabular}\n"
      ],
      "text/markdown": [
       "\n",
       "nrow | \n",
       "|---|\n",
       "| 5 | \n",
       "\n",
       "\n"
      ],
      "text/plain": [
       "  nrow\n",
       "1 5   "
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "df %>%\n",
    "  mutate(nrow = rownames(.)) %>%\n",
    "  arrange(desc(data)) %>%\n",
    "  filter(row_number() == 3) %>%\n",
    "  select(nrow)\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 107.反转df的行"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 104,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<table>\n",
       "<thead><tr><th scope=col>data</th></tr></thead>\n",
       "<tbody>\n",
       "\t<tr><td>3.451450e-08</td></tr>\n",
       "\t<tr><td>3.626011e-01</td></tr>\n",
       "\t<tr><td>3.639104e-07</td></tr>\n",
       "\t<tr><td>6.680218e-06</td></tr>\n",
       "\t<tr><td>1.661706e-05</td></tr>\n",
       "\t<tr><td>4.046237e-02</td></tr>\n",
       "\t<tr><td>5.045447e-06</td></tr>\n",
       "\t<tr><td>8.544812e-20</td></tr>\n",
       "\t<tr><td>1.464476e-10</td></tr>\n",
       "\t<tr><td>1.258704e-08</td></tr>\n",
       "</tbody>\n",
       "</table>\n"
      ],
      "text/latex": [
       "\\begin{tabular}{r|l}\n",
       " data\\\\\n",
       "\\hline\n",
       "\t 3.451450e-08\\\\\n",
       "\t 3.626011e-01\\\\\n",
       "\t 3.639104e-07\\\\\n",
       "\t 6.680218e-06\\\\\n",
       "\t 1.661706e-05\\\\\n",
       "\t 4.046237e-02\\\\\n",
       "\t 5.045447e-06\\\\\n",
       "\t 8.544812e-20\\\\\n",
       "\t 1.464476e-10\\\\\n",
       "\t 1.258704e-08\\\\\n",
       "\\end{tabular}\n"
      ],
      "text/markdown": [
       "\n",
       "data | \n",
       "|---|---|---|---|---|---|---|---|---|---|\n",
       "| 3.451450e-08 | \n",
       "| 3.626011e-01 | \n",
       "| 3.639104e-07 | \n",
       "| 6.680218e-06 | \n",
       "| 1.661706e-05 | \n",
       "| 4.046237e-02 | \n",
       "| 5.045447e-06 | \n",
       "| 8.544812e-20 | \n",
       "| 1.464476e-10 | \n",
       "| 1.258704e-08 | \n",
       "\n",
       "\n"
      ],
      "text/plain": [
       "   data        \n",
       "1  3.451450e-08\n",
       "2  3.626011e-01\n",
       "3  3.639104e-07\n",
       "4  6.680218e-06\n",
       "5  1.661706e-05\n",
       "6  4.046237e-02\n",
       "7  5.045447e-06\n",
       "8  8.544812e-20\n",
       "9  1.464476e-10\n",
       "10 1.258704e-08"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "df %>%\n",
    "  arrange(desc(rownames(.)))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 108.按照多列对数据进行合并\n",
    "输入\n",
    "df1= pd.DataFrame({'key1': ['K0', 'K0', 'K1', 'K2'],\n",
    "'key2': ['K0', 'K1', 'K0', 'K1'],\n",
    "'A': ['A0', 'A1', 'A2', 'A3'],\n",
    "'B': ['B0', 'B1', 'B2', 'B3']})\n",
    "\n",
    "df2= pd.DataFrame({'key1': ['K0', 'K1', 'K1', 'K2'],\n",
    "'key2': ['K0', 'K0', 'K0', 'K0'],\n",
    "'C': ['C0', 'C1', 'C2', 'C3'],\n",
    "'D': ['D0', 'D1', 'D2', 'D3']})"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 105,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Warning message in full_join_impl(x, y, by$x, by$y, suffix$x, suffix$y):\n",
      "“joining factors with different levels, coercing to character vector”"
     ]
    },
    {
     "data": {
      "text/html": [
       "<table>\n",
       "<thead><tr><th></th><th scope=col>key1</th><th scope=col>key2</th><th scope=col>A</th><th scope=col>B</th><th scope=col>C</th><th scope=col>D</th></tr></thead>\n",
       "<tbody>\n",
       "\t<tr><th scope=row>1</th><td>K0</td><td>K0</td><td>A0</td><td>B0</td><td>C0</td><td>D0</td></tr>\n",
       "\t<tr><th scope=row>3</th><td>K1</td><td>K0</td><td>A2</td><td>B2</td><td>C1</td><td>D1</td></tr>\n",
       "\t<tr><th scope=row>4</th><td>K1</td><td>K0</td><td>A2</td><td>B2</td><td>C2</td><td>D2</td></tr>\n",
       "</tbody>\n",
       "</table>\n"
      ],
      "text/latex": [
       "\\begin{tabular}{r|llllll}\n",
       "  & key1 & key2 & A & B & C & D\\\\\n",
       "\\hline\n",
       "\t1 & K0 & K0 & A0 & B0 & C0 & D0\\\\\n",
       "\t3 & K1 & K0 & A2 & B2 & C1 & D1\\\\\n",
       "\t4 & K1 & K0 & A2 & B2 & C2 & D2\\\\\n",
       "\\end{tabular}\n"
      ],
      "text/markdown": [
       "\n",
       "| <!--/--> | key1 | key2 | A | B | C | D | \n",
       "|---|---|---|\n",
       "| 1 | K0 | K0 | A0 | B0 | C0 | D0 | \n",
       "| 3 | K1 | K0 | A2 | B2 | C1 | D1 | \n",
       "| 4 | K1 | K0 | A2 | B2 | C2 | D2 | \n",
       "\n",
       "\n"
      ],
      "text/plain": [
       "  key1 key2 A  B  C  D \n",
       "1 K0   K0   A0 B0 C0 D0\n",
       "3 K1   K0   A2 B2 C1 D1\n",
       "4 K1   K0   A2 B2 C2 D2"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "df1 <- data.frame(\n",
    "  \"key1\" = c(\"K0\",\"K0\",\"K1\",\"K2\"),\n",
    "  \"key2\" = c(\"K0\",\"K1\",\"K0\",\"K1\"),\n",
    "  \"A\" = paste0('A',0:3),\n",
    "  \"B\" = paste0('B',0:3)\n",
    ")\n",
    "\n",
    "df2 <- data.frame(\n",
    "  \"key1\" = c(\"K0\",\"K1\",\"K1\",\"K2\"),\n",
    "  \"key2\" = paste0('K',rep(0,4)),\n",
    "  \"C\" = paste0('C',0:3),\n",
    "  \"D\" = paste0('D',0:3)\n",
    ")\n",
    "\n",
    "full_join(df1,df2,by = c('key1','key2')) %>%\n",
    "  na.omit(.)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 109.按照多列对数据进行合并,只保存df1的数据"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 106,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Warning message in left_join_impl(x, y, by$x, by$y, suffix$x, suffix$y):\n",
      "“joining factors with different levels, coercing to character vector”"
     ]
    },
    {
     "data": {
      "text/html": [
       "<table>\n",
       "<thead><tr><th scope=col>key1</th><th scope=col>key2</th><th scope=col>A</th><th scope=col>B</th><th scope=col>C</th><th scope=col>D</th></tr></thead>\n",
       "<tbody>\n",
       "\t<tr><td>K0</td><td>K0</td><td>A0</td><td>B0</td><td>C0</td><td>D0</td></tr>\n",
       "\t<tr><td>K0</td><td>K1</td><td>A1</td><td>B1</td><td>NA</td><td>NA</td></tr>\n",
       "\t<tr><td>K1</td><td>K0</td><td>A2</td><td>B2</td><td>C1</td><td>D1</td></tr>\n",
       "\t<tr><td>K1</td><td>K0</td><td>A2</td><td>B2</td><td>C2</td><td>D2</td></tr>\n",
       "\t<tr><td>K2</td><td>K1</td><td>A3</td><td>B3</td><td>NA</td><td>NA</td></tr>\n",
       "</tbody>\n",
       "</table>\n"
      ],
      "text/latex": [
       "\\begin{tabular}{r|llllll}\n",
       " key1 & key2 & A & B & C & D\\\\\n",
       "\\hline\n",
       "\t K0 & K0 & A0 & B0 & C0 & D0\\\\\n",
       "\t K0 & K1 & A1 & B1 & NA & NA\\\\\n",
       "\t K1 & K0 & A2 & B2 & C1 & D1\\\\\n",
       "\t K1 & K0 & A2 & B2 & C2 & D2\\\\\n",
       "\t K2 & K1 & A3 & B3 & NA & NA\\\\\n",
       "\\end{tabular}\n"
      ],
      "text/markdown": [
       "\n",
       "key1 | key2 | A | B | C | D | \n",
       "|---|---|---|---|---|\n",
       "| K0 | K0 | A0 | B0 | C0 | D0 | \n",
       "| K0 | K1 | A1 | B1 | NA | NA | \n",
       "| K1 | K0 | A2 | B2 | C1 | D1 | \n",
       "| K1 | K0 | A2 | B2 | C2 | D2 | \n",
       "| K2 | K1 | A3 | B3 | NA | NA | \n",
       "\n",
       "\n"
      ],
      "text/plain": [
       "  key1 key2 A  B  C  D \n",
       "1 K0   K0   A0 B0 C0 D0\n",
       "2 K0   K1   A1 B1 NA NA\n",
       "3 K1   K0   A2 B2 C1 D1\n",
       "4 K1   K0   A2 B2 C2 D2\n",
       "5 K2   K1   A3 B3 NA NA"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "left_join(df1,df2,by = c('key1','key2'))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 110.再次读取数据1并显示所有的列\n",
    "数据中由于列数较多中间列不显示"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 107,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Parsed with column specification:\n",
      "cols(\n",
      "  .default = col_character(),\n",
      "  positionId = col_integer(),\n",
      "  companyId = col_integer(),\n",
      "  salary = col_integer(),\n",
      "  publisherId = col_integer(),\n",
      "  approve = col_integer(),\n",
      "  latitude = col_double(),\n",
      "  longitude = col_double(),\n",
      "  resumeProcessRate = col_integer(),\n",
      "  resumeProcessDay = col_integer(),\n",
      "  score = col_integer(),\n",
      "  newScore = col_integer(),\n",
      "  matchScore = col_double(),\n",
      "  isSchoolJob = col_integer(),\n",
      "  adWord = col_integer(),\n",
      "  pcShow = col_integer(),\n",
      "  appShow = col_integer(),\n",
      "  deliver = col_integer(),\n",
      "  isHotHire = col_integer(),\n",
      "  count = col_integer(),\n",
      "  famousCompany = col_logical()\n",
      ")\n",
      "See spec(...) for full column specifications.\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "# A tibble: 105 × 53\n",
      "   positionId   positionName companyId\n",
      "        <int>          <chr>     <int>\n",
      "1     6802721       数据分析    475770\n",
      "2     5204912       数据建模     50735\n",
      "3     6877668       数据分析    100125\n",
      "4     6496141       数据分析     26564\n",
      "5     6467417       数据分析     29211\n",
      "6     6882347       数据分析     94826\n",
      "7     6841659       数据分析    348784\n",
      "8     6764018 数据建模工程师     13163\n",
      "9     6458372   数据分析专家     34132\n",
      "10    6786904     数据分析师     13163\n",
      "                                                                 companyLogo\n",
      "                                                                       <chr>\n",
      "1                      i/image2/M01/B7/3E/CgoB5lwPfEaAdn8WAABWQ0Jgl5s31.jpeg\n",
      "2                        image1/M00/00/85/CgYXBlTUXeeAR0IjAABbroUk-dw977.png\n",
      "3  image2/M00/0C/57/CgqLKVYcOA2ADcFuAAAE8MukIKA745.png?cc=0.8089290193747729\n",
      "4                      i/image2/M01/F7/3F/CgoB5lyGAQGAZeI-AAAdOqXecnw673.jpg\n",
      "5                      i/image2/M01/77/B8/CgoB5l1WDyGATNP5AAAlY3h88SY623.png\n",
      "6  image2/M00/04/12/CgpzWlXwKIKAaJd9AAARGoomCu4858.jpg?cc=0.6776386289857328\n",
      "7                      i/image2/M01/AC/0E/CgoB5lvvmFmAH5P5AAA5-5rnZGE002.png\n",
      "8                       i/image/M00/4B/5B/Cgp3O1efAWWAC02xAAB2G5qzmHQ810.png\n",
      "9                      i/image2/M01/F8/DE/CgoB5lyHTJeAP7v9AAFXUt4zJo4515.png\n",
      "10                      i/image/M00/4B/5B/Cgp3O1efAWWAC02xAAB2G5qzmHQ810.png\n",
      "   companySize       industryField financeStage\n",
      "         <chr>               <chr>        <chr>\n",
      "1     50-150人     移动互联网,电商          A轮\n",
      "2    150-500人                电商          B轮\n",
      "3   2000人以上 移动互联网,企业服务     上市公司\n",
      "4   500-2000人                电商    D轮及以上\n",
      "5   2000人以上          物流丨运输     上市公司\n",
      "6     50-150人     移动互联网,社交          B轮\n",
      "7     50-150人     移动互联网,电商          A轮\n",
      "8   500-2000人          移动互联网     上市公司\n",
      "9    150-500人   数据服务,广告营销          A轮\n",
      "10  500-2000人          移动互联网     上市公司\n",
      "                                         companyLabelList        firstType\n",
      "                                                    <chr>            <chr>\n",
      "1        ['绩效奖金', '带薪年假', '定期体检', '弹性工作'] 产品|需求|项目类\n",
      "2        ['年终奖金', '做五休二', '六险一金', '子女福利'] 开发|测试|运维类\n",
      "3        ['节日礼物', '年底双薪', '股票期权', '带薪年假'] 产品|需求|项目类\n",
      "4      ['生日趴', '每月腐败基金', '每月补贴', '年度旅游'] 开发|测试|运维类\n",
      "5        ['技能培训', '免费班车', '专项奖金', '岗位晋升'] 产品|需求|项目类\n",
      "6        ['股票期权', '扁平管理', '五险一金', '岗位晋升'] 产品|需求|项目类\n",
      "7        ['大牛团队', '扁平管理', '年底双薪', '股票期权'] 产品|需求|项目类\n",
      "8        ['绩效奖金', '股票期权', '年底双薪', '专项奖金'] 开发|测试|运维类\n",
      "9  ['开放式办公', '扁平管理', '带薪假期', '弹性工作时间'] 产品|需求|项目类\n",
      "10       ['绩效奖金', '股票期权', '年底双薪', '专项奖金'] 开发|测试|运维类\n",
      "   secondType    thirdType                                   skillLables\n",
      "        <chr>        <chr>                                         <chr>\n",
      "1    数据分析     数据分析           ['SQL', '数据库', '数据运营', 'BI']\n",
      "2    数据开发         建模                          ['算法', '数据架构']\n",
      "3    数据分析     数据分析                 ['数据库', '数据分析', 'SQL']\n",
      "4    数据开发     数据分析                                            []\n",
      "5    数据分析     数据分析                ['BI', '数据分析', '数据运营']\n",
      "6    数据分析     数据分析        ['BI', '可视化', '数据分析', '数据库']\n",
      "7    数据分析     数据分析                                            []\n",
      "8    数据开发         建模        ['Hadoop', 'Spark', 'MySQL', 'Oracle']\n",
      "9    数据分析 其他数据分析                      ['数据分析', '数据运营']\n",
      "10   数据开发     BI工程师 ['Hive', '数据挖掘', '数据分析', 'SQLServer']\n",
      "                                                        positionLables\n",
      "                                                                 <chr>\n",
      "1                  ['电商', '社交', 'SQL', '数据库', '数据运营', 'BI']\n",
      "2                                                 ['算法', '数据架构']\n",
      "3                                                    ['数据库', 'SQL']\n",
      "4                                                             ['电商']\n",
      "5                                                   ['BI', '数据运营']\n",
      "6                           ['音乐', '直播', 'BI', '可视化', '数据库']\n",
      "7                                                         ['工具软件']\n",
      "8           ['云计算', '大数据', 'Hadoop', 'Spark', 'MySQL', 'Oracle']\n",
      "9                         ['电商', '广告营销', '数据分析', '数据运营']\n",
      "10 ['企业服务', '大数据', 'Hive', '数据挖掘', '数据分析', 'SQLServer']\n",
      "                                                        industryLables\n",
      "                                                                 <chr>\n",
      "1                  ['电商', '社交', 'SQL', '数据库', '数据运营', 'BI']\n",
      "2                                                                   []\n",
      "3                                                                   []\n",
      "4                                                             ['电商']\n",
      "5                                                                   []\n",
      "6                           ['音乐', '直播', 'BI', '可视化', '数据库']\n",
      "7                                                         ['工具软件']\n",
      "8           ['云计算', '大数据', 'Hadoop', 'Spark', 'MySQL', 'Oracle']\n",
      "9                         ['电商', '广告营销', '数据分析', '数据运营']\n",
      "10 ['企业服务', '大数据', 'Hive', '数据挖掘', '数据分析', 'SQLServer']\n",
      "        createTime formatCreateTime district                businessZones\n",
      "             <chr>            <chr>    <chr>                        <chr>\n",
      "1  2020/3/16 11:00        11:00发布   余杭区                     ['仓前']\n",
      "2  2020/3/16 11:08        11:08发布   滨江区             ['西兴', '长河']\n",
      "3  2020/3/16 10:33        10:33发布   江干区       ['四季青', '钱江新城']\n",
      "4  2020/3/16 10:10        10:10发布   江干区                         <NA>\n",
      "5  2020/3/16 09:56        09:56发布   余杭区                     ['仓前']\n",
      "6  2020/3/16 09:54        09:54发布   余杭区                         <NA>\n",
      "7  2020/3/16 09:41        09:41发布   萧山区                     ['宁围']\n",
      "8  2020/3/16 11:18        11:18发布   西湖区 ['翠苑', '文一路', '古墩路']\n",
      "9  2020/3/16 10:57        10:57发布   余杭区                         <NA>\n",
      "10 2020/3/16 11:18        11:18发布   西湖区 ['翠苑', '文一路', '古墩路']\n",
      "   salary   workYear jobNature education\n",
      "    <int>      <chr>     <chr>     <chr>\n",
      "1   37500      1-3年      全职      本科\n",
      "2   15000      3-5年      全职      本科\n",
      "3    3500      1-3年      全职      本科\n",
      "4   45000      3-5年      全职      本科\n",
      "5   30000      3-5年      全职      大专\n",
      "6   50000      1-3年      全职      本科\n",
      "7   30000      1-3年      全职      本科\n",
      "8   35000 应届毕业生      全职      不限\n",
      "9   60000     5-10年      全职      本科\n",
      "10  40000      1-3年      全职      本科\n",
      "                          positionAdvantage   imState       lastLogin\n",
      "                                      <chr>     <chr>           <chr>\n",
      "1    五险一金、弹性工作、带薪年假、年度体检     today 2020/3/16 11:00\n",
      "2                六险一金,定期体检,丰厚年终  disabled 2020/3/16 11:08\n",
      "3         五险一金 周末双休 不加班 节日福利     today 2020/3/16 10:33\n",
      "4                                  年终奖等 threeDays 2020/3/16 10:10\n",
      "5                                  五险一金  disabled 2020/3/16 09:56\n",
      "6           团建 野生蹦迪 文艺咖 声音发烧友 threeDays 2020/3/16 09:54\n",
      "7                       大牛团队 大数据产品 threeDays 2020/3/16 09:41\n",
      "8                 16-18薪 大数据A股上市公司     today 2020/3/16 11:02\n",
      "9  六险一金、境内外旅游、带薪年假、培训发展     today 2020/3/16 09:51\n",
      "10                 核心业务，季度奖，年终奖     today 2020/3/16 11:02\n",
      "   publisherId approve subwayline stationname\n",
      "         <int>   <int>      <chr>       <chr>\n",
      "1     12022406       1       <NA>        <NA>\n",
      "2      5491688       1       <NA>        <NA>\n",
      "3      5322583       1      4号线      江锦路\n",
      "4      9814560       1      1号线      文泽路\n",
      "5      6392394       1       <NA>        <NA>\n",
      "6     11484869       1       <NA>        <NA>\n",
      "7     15009222       1       <NA>        <NA>\n",
      "8       158057       1      2号线      丰潭路\n",
      "9      7542546       1       <NA>        <NA>\n",
      "10      158057       1      2号线      丰潭路\n",
      "                                 linestaion latitude longitude hitags\n",
      "                                      <chr>    <dbl>     <dbl>  <chr>\n",
      "1                                      <NA> 30.27842  120.0059   <NA>\n",
      "2                                      <NA> 30.18804  120.2012   <NA>\n",
      "3  4号线_城星路;4号线_市民中心;4号线_江锦路 30.24152  120.2125   <NA>\n",
      "4                              1号线_文泽路 30.29940  120.3503   <NA>\n",
      "5                                      <NA> 30.28295  120.0098   <NA>\n",
      "6                                      <NA> 30.27585  119.9971   <NA>\n",
      "7                                      <NA> 30.20363  120.2477   <NA>\n",
      "8                 2号线_古翠路;2号线_丰潭路 30.29031  120.1146   <NA>\n",
      "9                                      <NA> 30.28185  120.0157   <NA>\n",
      "10                2号线_古翠路;2号线_丰潭路 30.29031  120.1146   <NA>\n",
      "   resumeProcessRate resumeProcessDay score newScore matchScore\n",
      "               <int>            <int> <int>    <int>      <dbl>\n",
      "1                 50                1   233        0  15.101875\n",
      "2                 23                1   176        0  32.559414\n",
      "3                 11                4    80        0  14.972357\n",
      "4                100                1    68        0  12.874153\n",
      "5                 20                1    66        0  12.755375\n",
      "6                 16                1    66        0  12.718732\n",
      "7                100                1    65        0  12.615116\n",
      "8                  1                1    47        0   3.033237\n",
      "9                 83                1    24        0   1.141952\n",
      "10                 1                1    18        0   1.177361\n",
      "   matchScoreExplain query explain isSchoolJob adWord  plus pcShow appShow\n",
      "               <chr> <chr>   <chr>       <int>  <int> <chr>  <int>   <int>\n",
      "1               <NA>  <NA>    <NA>           0      0  <NA>      0       0\n",
      "2               <NA>  <NA>    <NA>           0      0  <NA>      0       0\n",
      "3               <NA>  <NA>    <NA>           0      0  <NA>      0       0\n",
      "4               <NA>  <NA>    <NA>           0      0  <NA>      0       0\n",
      "5               <NA>  <NA>    <NA>           0      0  <NA>      0       0\n",
      "6               <NA>  <NA>    <NA>           0      0  <NA>      0       0\n",
      "7               <NA>  <NA>    <NA>           0      0  <NA>      0       0\n",
      "8               <NA>  <NA>    <NA>           1      0  <NA>      0       0\n",
      "9               <NA>  <NA>    <NA>           0      0  <NA>      0       0\n",
      "10              <NA>  <NA>    <NA>           0      0  <NA>      0       0\n",
      "   deliver gradeDescription promotionScoreExplain isHotHire count\n",
      "     <int>            <chr>                 <chr>     <int> <int>\n",
      "1        0             <NA>                  <NA>         0     0\n",
      "2        0             <NA>                  <NA>         0     0\n",
      "3        0             <NA>                  <NA>         0     0\n",
      "4        0             <NA>                  <NA>         0     0\n",
      "5        0             <NA>                  <NA>         0     0\n",
      "6        0             <NA>                  <NA>         0     0\n",
      "7        0             <NA>                  <NA>         0     0\n",
      "8        0             <NA>                  <NA>         0     0\n",
      "9        0             <NA>                  <NA>         0     0\n",
      "10       0             <NA>                  <NA>         0     0\n",
      "   aggregatePositionIds famousCompany\n",
      "                  <chr>         <lgl>\n",
      "1                    []         FALSE\n",
      "2                    []         FALSE\n",
      "3                    []         FALSE\n",
      "4                    []          TRUE\n",
      "5                    []          TRUE\n",
      "6                    []         FALSE\n",
      "7                    []         FALSE\n",
      "8                    []          TRUE\n",
      "9                    []         FALSE\n",
      "10                   []          TRUE\n",
      "# ... with 95 more rows\n"
     ]
    }
   ],
   "source": [
    "df <- read_csv('数据1.csv', locale = locale(encoding = \"GBK\")) %>%\n",
    "  print(width = Inf)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 111.查找secondType与thirdType值相等的行号"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 108,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<dl class=dl-horizontal>\n",
       "\t<dt>nrow1</dt>\n",
       "\t\t<dd>'1'</dd>\n",
       "\t<dt>nrow2</dt>\n",
       "\t\t<dd>'3'</dd>\n",
       "\t<dt>nrow3</dt>\n",
       "\t\t<dd>'5'</dd>\n",
       "\t<dt>nrow4</dt>\n",
       "\t\t<dd>'6'</dd>\n",
       "\t<dt>nrow5</dt>\n",
       "\t\t<dd>'7'</dd>\n",
       "\t<dt>nrow6</dt>\n",
       "\t\t<dd>'11'</dd>\n",
       "\t<dt>nrow7</dt>\n",
       "\t\t<dd>'15'</dd>\n",
       "\t<dt>nrow8</dt>\n",
       "\t\t<dd>'24'</dd>\n",
       "\t<dt>nrow9</dt>\n",
       "\t\t<dd>'26'</dd>\n",
       "\t<dt>nrow10</dt>\n",
       "\t\t<dd>'28'</dd>\n",
       "\t<dt>nrow11</dt>\n",
       "\t\t<dd>'29'</dd>\n",
       "\t<dt>nrow12</dt>\n",
       "\t\t<dd>'30'</dd>\n",
       "\t<dt>nrow13</dt>\n",
       "\t\t<dd>'31'</dd>\n",
       "\t<dt>nrow14</dt>\n",
       "\t\t<dd>'34'</dd>\n",
       "\t<dt>nrow15</dt>\n",
       "\t\t<dd>'38'</dd>\n",
       "\t<dt>nrow16</dt>\n",
       "\t\t<dd>'39'</dd>\n",
       "\t<dt>nrow17</dt>\n",
       "\t\t<dd>'40'</dd>\n",
       "\t<dt>nrow18</dt>\n",
       "\t\t<dd>'41'</dd>\n",
       "\t<dt>nrow19</dt>\n",
       "\t\t<dd>'42'</dd>\n",
       "\t<dt>nrow20</dt>\n",
       "\t\t<dd>'49'</dd>\n",
       "\t<dt>nrow21</dt>\n",
       "\t\t<dd>'50'</dd>\n",
       "\t<dt>nrow22</dt>\n",
       "\t\t<dd>'53'</dd>\n",
       "\t<dt>nrow23</dt>\n",
       "\t\t<dd>'54'</dd>\n",
       "\t<dt>nrow24</dt>\n",
       "\t\t<dd>'56'</dd>\n",
       "\t<dt>nrow25</dt>\n",
       "\t\t<dd>'58'</dd>\n",
       "\t<dt>nrow26</dt>\n",
       "\t\t<dd>'62'</dd>\n",
       "\t<dt>nrow27</dt>\n",
       "\t\t<dd>'66'</dd>\n",
       "\t<dt>nrow28</dt>\n",
       "\t\t<dd>'67'</dd>\n",
       "\t<dt>nrow29</dt>\n",
       "\t\t<dd>'68'</dd>\n",
       "\t<dt>nrow30</dt>\n",
       "\t\t<dd>'72'</dd>\n",
       "\t<dt>nrow31</dt>\n",
       "\t\t<dd>'74'</dd>\n",
       "\t<dt>nrow32</dt>\n",
       "\t\t<dd>'75'</dd>\n",
       "\t<dt>nrow33</dt>\n",
       "\t\t<dd>'76'</dd>\n",
       "\t<dt>nrow34</dt>\n",
       "\t\t<dd>'80'</dd>\n",
       "\t<dt>nrow35</dt>\n",
       "\t\t<dd>'81'</dd>\n",
       "\t<dt>nrow36</dt>\n",
       "\t\t<dd>'83'</dd>\n",
       "\t<dt>nrow37</dt>\n",
       "\t\t<dd>'86'</dd>\n",
       "\t<dt>nrow38</dt>\n",
       "\t\t<dd>'89'</dd>\n",
       "\t<dt>nrow39</dt>\n",
       "\t\t<dd>'90'</dd>\n",
       "\t<dt>nrow40</dt>\n",
       "\t\t<dd>'92'</dd>\n",
       "\t<dt>nrow41</dt>\n",
       "\t\t<dd>'97'</dd>\n",
       "\t<dt>nrow42</dt>\n",
       "\t\t<dd>'101'</dd>\n",
       "</dl>\n"
      ],
      "text/latex": [
       "\\begin{description*}\n",
       "\\item[nrow1] '1'\n",
       "\\item[nrow2] '3'\n",
       "\\item[nrow3] '5'\n",
       "\\item[nrow4] '6'\n",
       "\\item[nrow5] '7'\n",
       "\\item[nrow6] '11'\n",
       "\\item[nrow7] '15'\n",
       "\\item[nrow8] '24'\n",
       "\\item[nrow9] '26'\n",
       "\\item[nrow10] '28'\n",
       "\\item[nrow11] '29'\n",
       "\\item[nrow12] '30'\n",
       "\\item[nrow13] '31'\n",
       "\\item[nrow14] '34'\n",
       "\\item[nrow15] '38'\n",
       "\\item[nrow16] '39'\n",
       "\\item[nrow17] '40'\n",
       "\\item[nrow18] '41'\n",
       "\\item[nrow19] '42'\n",
       "\\item[nrow20] '49'\n",
       "\\item[nrow21] '50'\n",
       "\\item[nrow22] '53'\n",
       "\\item[nrow23] '54'\n",
       "\\item[nrow24] '56'\n",
       "\\item[nrow25] '58'\n",
       "\\item[nrow26] '62'\n",
       "\\item[nrow27] '66'\n",
       "\\item[nrow28] '67'\n",
       "\\item[nrow29] '68'\n",
       "\\item[nrow30] '72'\n",
       "\\item[nrow31] '74'\n",
       "\\item[nrow32] '75'\n",
       "\\item[nrow33] '76'\n",
       "\\item[nrow34] '80'\n",
       "\\item[nrow35] '81'\n",
       "\\item[nrow36] '83'\n",
       "\\item[nrow37] '86'\n",
       "\\item[nrow38] '89'\n",
       "\\item[nrow39] '90'\n",
       "\\item[nrow40] '92'\n",
       "\\item[nrow41] '97'\n",
       "\\item[nrow42] '101'\n",
       "\\end{description*}\n"
      ],
      "text/markdown": [
       "nrow1\n",
       ":   '1'nrow2\n",
       ":   '3'nrow3\n",
       ":   '5'nrow4\n",
       ":   '6'nrow5\n",
       ":   '7'nrow6\n",
       ":   '11'nrow7\n",
       ":   '15'nrow8\n",
       ":   '24'nrow9\n",
       ":   '26'nrow10\n",
       ":   '28'nrow11\n",
       ":   '29'nrow12\n",
       ":   '30'nrow13\n",
       ":   '31'nrow14\n",
       ":   '34'nrow15\n",
       ":   '38'nrow16\n",
       ":   '39'nrow17\n",
       ":   '40'nrow18\n",
       ":   '41'nrow19\n",
       ":   '42'nrow20\n",
       ":   '49'nrow21\n",
       ":   '50'nrow22\n",
       ":   '53'nrow23\n",
       ":   '54'nrow24\n",
       ":   '56'nrow25\n",
       ":   '58'nrow26\n",
       ":   '62'nrow27\n",
       ":   '66'nrow28\n",
       ":   '67'nrow29\n",
       ":   '68'nrow30\n",
       ":   '72'nrow31\n",
       ":   '74'nrow32\n",
       ":   '75'nrow33\n",
       ":   '76'nrow34\n",
       ":   '80'nrow35\n",
       ":   '81'nrow36\n",
       ":   '83'nrow37\n",
       ":   '86'nrow38\n",
       ":   '89'nrow39\n",
       ":   '90'nrow40\n",
       ":   '92'nrow41\n",
       ":   '97'nrow42\n",
       ":   '101'\n",
       "\n"
      ],
      "text/plain": [
       " nrow1  nrow2  nrow3  nrow4  nrow5  nrow6  nrow7  nrow8  nrow9 nrow10 nrow11 \n",
       "   \"1\"    \"3\"    \"5\"    \"6\"    \"7\"   \"11\"   \"15\"   \"24\"   \"26\"   \"28\"   \"29\" \n",
       "nrow12 nrow13 nrow14 nrow15 nrow16 nrow17 nrow18 nrow19 nrow20 nrow21 nrow22 \n",
       "  \"30\"   \"31\"   \"34\"   \"38\"   \"39\"   \"40\"   \"41\"   \"42\"   \"49\"   \"50\"   \"53\" \n",
       "nrow23 nrow24 nrow25 nrow26 nrow27 nrow28 nrow29 nrow30 nrow31 nrow32 nrow33 \n",
       "  \"54\"   \"56\"   \"58\"   \"62\"   \"66\"   \"67\"   \"68\"   \"72\"   \"74\"   \"75\"   \"76\" \n",
       "nrow34 nrow35 nrow36 nrow37 nrow38 nrow39 nrow40 nrow41 nrow42 \n",
       "  \"80\"   \"81\"   \"83\"   \"86\"   \"89\"   \"90\"   \"92\"   \"97\"  \"101\" "
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "df %>%\n",
    "  mutate(nrow = rownames(.)) %>%\n",
    "  filter(secondType == thirdType) %>%\n",
    "  select(nrow) %>%\n",
    "  unlist()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 112.查找薪资大于平均薪资的第三个数据"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 109,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<table>\n",
       "<thead><tr><th scope=col>nrow</th></tr></thead>\n",
       "<tbody>\n",
       "\t<tr><td>6</td></tr>\n",
       "</tbody>\n",
       "</table>\n"
      ],
      "text/latex": [
       "\\begin{tabular}{r|l}\n",
       " nrow\\\\\n",
       "\\hline\n",
       "\t 6\\\\\n",
       "\\end{tabular}\n"
      ],
      "text/markdown": [
       "\n",
       "nrow | \n",
       "|---|\n",
       "| 6 | \n",
       "\n",
       "\n"
      ],
      "text/plain": [
       "  nrow\n",
       "1 6   "
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "df %>%\n",
    "  mutate(nrow = rownames(.)) %>%\n",
    "  filter(salary > mean(salary)) %>%\n",
    "  select(nrow) %>%\n",
    "  filter(row_number() == 3)\n",
    "# # A tibble: 1 x 1\n",
    "# nrow\n",
    "# <chr>\n",
    "# 1 6"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 113.将上一题数据的salary列开根号"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 110,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<table>\n",
       "<thead><tr><th scope=col>salary_sqrt</th></tr></thead>\n",
       "<tbody>\n",
       "\t<tr><td>193.6492</td></tr>\n",
       "\t<tr><td>122.4745</td></tr>\n",
       "\t<tr><td> 59.1608</td></tr>\n",
       "\t<tr><td>212.1320</td></tr>\n",
       "\t<tr><td>173.2051</td></tr>\n",
       "\t<tr><td>223.6068</td></tr>\n",
       "\t<tr><td>173.2051</td></tr>\n",
       "\t<tr><td>187.0829</td></tr>\n",
       "\t<tr><td>244.9490</td></tr>\n",
       "\t<tr><td>200.0000</td></tr>\n",
       "\t<tr><td>173.2051</td></tr>\n",
       "\t<tr><td>173.2051</td></tr>\n",
       "\t<tr><td>141.4214</td></tr>\n",
       "\t<tr><td>173.2051</td></tr>\n",
       "\t<tr><td>193.6492</td></tr>\n",
       "\t<tr><td>165.8312</td></tr>\n",
       "\t<tr><td>193.6492</td></tr>\n",
       "\t<tr><td>193.6492</td></tr>\n",
       "\t<tr><td>173.2051</td></tr>\n",
       "\t<tr><td>193.6492</td></tr>\n",
       "\t<tr><td>165.8312</td></tr>\n",
       "\t<tr><td>141.4214</td></tr>\n",
       "\t<tr><td>173.2051</td></tr>\n",
       "\t<tr><td>150.0000</td></tr>\n",
       "\t<tr><td>165.8312</td></tr>\n",
       "\t<tr><td>212.1320</td></tr>\n",
       "\t<tr><td>180.2776</td></tr>\n",
       "\t<tr><td>173.2051</td></tr>\n",
       "\t<tr><td>193.6492</td></tr>\n",
       "\t<tr><td>212.1320</td></tr>\n",
       "\t<tr><td>...</td></tr>\n",
       "\t<tr><td>164.31677</td></tr>\n",
       "\t<tr><td>173.20508</td></tr>\n",
       "\t<tr><td>193.64917</td></tr>\n",
       "\t<tr><td>162.78821</td></tr>\n",
       "\t<tr><td>193.64917</td></tr>\n",
       "\t<tr><td>173.20508</td></tr>\n",
       "\t<tr><td>150.00000</td></tr>\n",
       "\t<tr><td>244.94897</td></tr>\n",
       "\t<tr><td> 86.60254</td></tr>\n",
       "\t<tr><td> 86.60254</td></tr>\n",
       "\t<tr><td>173.20508</td></tr>\n",
       "\t<tr><td>173.20508</td></tr>\n",
       "\t<tr><td>200.00000</td></tr>\n",
       "\t<tr><td>173.20508</td></tr>\n",
       "\t<tr><td>173.20508</td></tr>\n",
       "\t<tr><td>223.60680</td></tr>\n",
       "\t<tr><td>206.15528</td></tr>\n",
       "\t<tr><td>173.20508</td></tr>\n",
       "\t<tr><td>170.29386</td></tr>\n",
       "\t<tr><td>173.20508</td></tr>\n",
       "\t<tr><td>193.64917</td></tr>\n",
       "\t<tr><td>173.20508</td></tr>\n",
       "\t<tr><td>173.20508</td></tr>\n",
       "\t<tr><td>173.20508</td></tr>\n",
       "\t<tr><td>191.04973</td></tr>\n",
       "\t<tr><td>158.11388</td></tr>\n",
       "\t<tr><td>187.08287</td></tr>\n",
       "\t<tr><td>173.20508</td></tr>\n",
       "\t<tr><td>141.42136</td></tr>\n",
       "\t<tr><td>146.62878</td></tr>\n",
       "</tbody>\n",
       "</table>\n"
      ],
      "text/latex": [
       "\\begin{tabular}{r|l}\n",
       " salary\\_sqrt\\\\\n",
       "\\hline\n",
       "\t 193.6492\\\\\n",
       "\t 122.4745\\\\\n",
       "\t  59.1608\\\\\n",
       "\t 212.1320\\\\\n",
       "\t 173.2051\\\\\n",
       "\t 223.6068\\\\\n",
       "\t 173.2051\\\\\n",
       "\t 187.0829\\\\\n",
       "\t 244.9490\\\\\n",
       "\t 200.0000\\\\\n",
       "\t 173.2051\\\\\n",
       "\t 173.2051\\\\\n",
       "\t 141.4214\\\\\n",
       "\t 173.2051\\\\\n",
       "\t 193.6492\\\\\n",
       "\t 165.8312\\\\\n",
       "\t 193.6492\\\\\n",
       "\t 193.6492\\\\\n",
       "\t 173.2051\\\\\n",
       "\t 193.6492\\\\\n",
       "\t 165.8312\\\\\n",
       "\t 141.4214\\\\\n",
       "\t 173.2051\\\\\n",
       "\t 150.0000\\\\\n",
       "\t 165.8312\\\\\n",
       "\t 212.1320\\\\\n",
       "\t 180.2776\\\\\n",
       "\t 173.2051\\\\\n",
       "\t 193.6492\\\\\n",
       "\t 212.1320\\\\\n",
       "\t ...\\\\\n",
       "\t 164.31677\\\\\n",
       "\t 173.20508\\\\\n",
       "\t 193.64917\\\\\n",
       "\t 162.78821\\\\\n",
       "\t 193.64917\\\\\n",
       "\t 173.20508\\\\\n",
       "\t 150.00000\\\\\n",
       "\t 244.94897\\\\\n",
       "\t  86.60254\\\\\n",
       "\t  86.60254\\\\\n",
       "\t 173.20508\\\\\n",
       "\t 173.20508\\\\\n",
       "\t 200.00000\\\\\n",
       "\t 173.20508\\\\\n",
       "\t 173.20508\\\\\n",
       "\t 223.60680\\\\\n",
       "\t 206.15528\\\\\n",
       "\t 173.20508\\\\\n",
       "\t 170.29386\\\\\n",
       "\t 173.20508\\\\\n",
       "\t 193.64917\\\\\n",
       "\t 173.20508\\\\\n",
       "\t 173.20508\\\\\n",
       "\t 173.20508\\\\\n",
       "\t 191.04973\\\\\n",
       "\t 158.11388\\\\\n",
       "\t 187.08287\\\\\n",
       "\t 173.20508\\\\\n",
       "\t 141.42136\\\\\n",
       "\t 146.62878\\\\\n",
       "\\end{tabular}\n"
      ],
      "text/markdown": [
       "\n",
       "salary_sqrt | \n",
       "|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|\n",
       "| 193.6492 | \n",
       "| 122.4745 | \n",
       "|  59.1608 | \n",
       "| 212.1320 | \n",
       "| 173.2051 | \n",
       "| 223.6068 | \n",
       "| 173.2051 | \n",
       "| 187.0829 | \n",
       "| 244.9490 | \n",
       "| 200.0000 | \n",
       "| 173.2051 | \n",
       "| 173.2051 | \n",
       "| 141.4214 | \n",
       "| 173.2051 | \n",
       "| 193.6492 | \n",
       "| 165.8312 | \n",
       "| 193.6492 | \n",
       "| 193.6492 | \n",
       "| 173.2051 | \n",
       "| 193.6492 | \n",
       "| 165.8312 | \n",
       "| 141.4214 | \n",
       "| 173.2051 | \n",
       "| 150.0000 | \n",
       "| 165.8312 | \n",
       "| 212.1320 | \n",
       "| 180.2776 | \n",
       "| 173.2051 | \n",
       "| 193.6492 | \n",
       "| 212.1320 | \n",
       "| ... | \n",
       "| 164.31677 | \n",
       "| 173.20508 | \n",
       "| 193.64917 | \n",
       "| 162.78821 | \n",
       "| 193.64917 | \n",
       "| 173.20508 | \n",
       "| 150.00000 | \n",
       "| 244.94897 | \n",
       "|  86.60254 | \n",
       "|  86.60254 | \n",
       "| 173.20508 | \n",
       "| 173.20508 | \n",
       "| 200.00000 | \n",
       "| 173.20508 | \n",
       "| 173.20508 | \n",
       "| 223.60680 | \n",
       "| 206.15528 | \n",
       "| 173.20508 | \n",
       "| 170.29386 | \n",
       "| 173.20508 | \n",
       "| 193.64917 | \n",
       "| 173.20508 | \n",
       "| 173.20508 | \n",
       "| 173.20508 | \n",
       "| 191.04973 | \n",
       "| 158.11388 | \n",
       "| 187.08287 | \n",
       "| 173.20508 | \n",
       "| 141.42136 | \n",
       "| 146.62878 | \n",
       "\n",
       "\n"
      ],
      "text/plain": [
       "    salary_sqrt\n",
       "1   193.6492   \n",
       "2   122.4745   \n",
       "3    59.1608   \n",
       "4   212.1320   \n",
       "5   173.2051   \n",
       "6   223.6068   \n",
       "7   173.2051   \n",
       "8   187.0829   \n",
       "9   244.9490   \n",
       "10  200.0000   \n",
       "11  173.2051   \n",
       "12  173.2051   \n",
       "13  141.4214   \n",
       "14  173.2051   \n",
       "15  193.6492   \n",
       "16  165.8312   \n",
       "17  193.6492   \n",
       "18  193.6492   \n",
       "19  173.2051   \n",
       "20  193.6492   \n",
       "21  165.8312   \n",
       "22  141.4214   \n",
       "23  173.2051   \n",
       "24  150.0000   \n",
       "25  165.8312   \n",
       "26  212.1320   \n",
       "27  180.2776   \n",
       "28  173.2051   \n",
       "29  193.6492   \n",
       "30  212.1320   \n",
       "... ...        \n",
       "76  164.31677  \n",
       "77  173.20508  \n",
       "78  193.64917  \n",
       "79  162.78821  \n",
       "80  193.64917  \n",
       "81  173.20508  \n",
       "82  150.00000  \n",
       "83  244.94897  \n",
       "84   86.60254  \n",
       "85   86.60254  \n",
       "86  173.20508  \n",
       "87  173.20508  \n",
       "88  200.00000  \n",
       "89  173.20508  \n",
       "90  173.20508  \n",
       "91  223.60680  \n",
       "92  206.15528  \n",
       "93  173.20508  \n",
       "94  170.29386  \n",
       "95  173.20508  \n",
       "96  193.64917  \n",
       "97  173.20508  \n",
       "98  173.20508  \n",
       "99  173.20508  \n",
       "100 191.04973  \n",
       "101 158.11388  \n",
       "102 187.08287  \n",
       "103 173.20508  \n",
       "104 141.42136  \n",
       "105 146.62878  "
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "df %>%\n",
    "  summarise(salary_sqrt = sqrt(salary))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 114.将上一题数据的linestaion列按_拆分"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 111,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "df <- df %>%\n",
    "  mutate(split = str_split(linestaion,'_'))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 115.查看上一题数据中一共有多少列"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 112,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "54"
      ],
      "text/latex": [
       "54"
      ],
      "text/markdown": [
       "54"
      ],
      "text/plain": [
       "[1] 54"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "length(df)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 116.提取industryField列以'数据'开头的行"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 114,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<table>\n",
       "<thead><tr><th scope=col>positionId</th><th scope=col>positionName</th><th scope=col>companyId</th><th scope=col>companyLogo</th><th scope=col>companySize</th><th scope=col>industryField</th><th scope=col>financeStage</th><th scope=col>companyLabelList</th><th scope=col>firstType</th><th scope=col>secondType</th><th scope=col>...</th><th scope=col>pcShow</th><th scope=col>appShow</th><th scope=col>deliver</th><th scope=col>gradeDescription</th><th scope=col>promotionScoreExplain</th><th scope=col>isHotHire</th><th scope=col>count</th><th scope=col>aggregatePositionIds</th><th scope=col>famousCompany</th><th scope=col>split</th></tr></thead>\n",
       "<tbody>\n",
       "\t<tr><td>6458372                                               </td><td>数据分析专家                                          </td><td>    34132                                             </td><td>i/image2/M01/F8/DE/CgoB5lyHTJeAP7v9AAFXUt4zJo4515.png </td><td>150-500人                                             </td><td>数据服务,广告营销                                     </td><td>A轮                                                   </td><td>['开放式办公', '扁平管理', '带薪假期', '弹性工作时间']</td><td>产品|需求|项目类                                      </td><td>数据分析                                              </td><td>...                                                   </td><td>0                                                     </td><td>0                                                     </td><td>0                                                     </td><td>NA                                                    </td><td>NA                                                    </td><td>0                                                     </td><td>0                                                     </td><td>[]                                                    </td><td>FALSE                                                 </td><td>NA                                                    </td></tr>\n",
       "\t<tr><td>6804629                                               </td><td>数据分析师                                            </td><td>    34132                                             </td><td>i/image2/M01/F8/DE/CgoB5lyHTJeAP7v9AAFXUt4zJo4515.png </td><td>150-500人                                             </td><td>数据服务,广告营销                                     </td><td>A轮                                                   </td><td>['开放式办公', '扁平管理', '带薪假期', '弹性工作时间']</td><td>产品|需求|项目类                                      </td><td>数据分析                                              </td><td>...                                                   </td><td>0                                                     </td><td>0                                                     </td><td>0                                                     </td><td>NA                                                    </td><td>NA                                                    </td><td>0                                                     </td><td>0                                                     </td><td>[]                                                    </td><td>FALSE                                                 </td><td>NA                                                    </td></tr>\n",
       "\t<tr><td>6804489                                               </td><td>资深数据分析师                                        </td><td>    34132                                             </td><td>i/image2/M01/F8/DE/CgoB5lyHTJeAP7v9AAFXUt4zJo4515.png </td><td>150-500人                                             </td><td>数据服务,广告营销                                     </td><td>A轮                                                   </td><td>['开放式办公', '扁平管理', '带薪假期', '弹性工作时间']</td><td>开发|测试|运维类                                      </td><td>数据开发                                              </td><td>...                                                   </td><td>0                                                     </td><td>0                                                     </td><td>0                                                     </td><td>NA                                                    </td><td>NA                                                    </td><td>0                                                     </td><td>0                                                     </td><td>[]                                                    </td><td>FALSE                                                 </td><td>NA                                                    </td></tr>\n",
       "\t<tr><td>6267370                                               </td><td>数据分析专家                                          </td><td>    31544                                             </td><td>image1/M00/00/48/CgYXBlTUXOaADKooAABjQoD_n1w508.png   </td><td>150-500人                                             </td><td>数据服务                                              </td><td>不需要融资                                            </td><td>['专业红娘牵线', '节日礼物', '技能培训', '岗位晋升']  </td><td>开发|测试|运维类                                      </td><td>数据开发                                              </td><td>...                                                   </td><td>0                                                     </td><td>0                                                     </td><td>0                                                     </td><td>NA                                                    </td><td>NA                                                    </td><td>0                                                     </td><td>0                                                     </td><td>[]                                                    </td><td>FALSE                                                 </td><td>4号线           , 中医药大学;4号线, 联庄              </td></tr>\n",
       "\t<tr><td>6804489                                               </td><td>资深数据分析师                                        </td><td>    34132                                             </td><td>i/image2/M01/F8/DE/CgoB5lyHTJeAP7v9AAFXUt4zJo4515.png </td><td>150-500人                                             </td><td>数据服务,广告营销                                     </td><td>A轮                                                   </td><td>['开放式办公', '扁平管理', '带薪假期', '弹性工作时间']</td><td>开发|测试|运维类                                      </td><td>数据开发                                              </td><td>...                                                   </td><td>0                                                     </td><td>0                                                     </td><td>0                                                     </td><td>NA                                                    </td><td>NA                                                    </td><td>0                                                     </td><td>0                                                     </td><td>[]                                                    </td><td>FALSE                                                 </td><td>NA                                                    </td></tr>\n",
       "\t<tr><td>6242470                                               </td><td>数据分析师                                            </td><td>    31544                                             </td><td>image1/M00/00/48/CgYXBlTUXOaADKooAABjQoD_n1w508.png   </td><td>150-500人                                             </td><td>数据服务                                              </td><td>不需要融资                                            </td><td>['专业红娘牵线', '节日礼物', '技能培训', '岗位晋升']  </td><td>产品|需求|项目类                                      </td><td>数据分析                                              </td><td>...                                                   </td><td>0                                                     </td><td>0                                                     </td><td>0                                                     </td><td>NA                                                    </td><td>NA                                                    </td><td>0                                                     </td><td>0                                                     </td><td>[]                                                    </td><td>FALSE                                                 </td><td>4号线           , 中医药大学;4号线, 联庄              </td></tr>\n",
       "\t<tr><td>6680900                                               </td><td>数据分析师 (MJ000250)                                 </td><td>   114335                                             </td><td>i/image2/M00/17/C2/CgoB5ln5lUuAM8oSAADO2Rz54hQ336.png </td><td>150-500人                                             </td><td>数据服务                                              </td><td>B轮                                                   </td><td>['股票期权', '弹性工作', '领导好', '五险一金']        </td><td>产品|需求|项目类                                      </td><td>产品经理                                              </td><td>...                                                   </td><td>0                                                     </td><td>0                                                     </td><td>0                                                     </td><td>NA                                                    </td><td>NA                                                    </td><td>0                                                     </td><td>0                                                     </td><td>[]                                                    </td><td>FALSE                                                 </td><td>NA                                                    </td></tr>\n",
       "\t<tr><td>6680900                                               </td><td>数据分析师 (MJ000250)                                 </td><td>   114335                                             </td><td>i/image2/M00/17/C2/CgoB5ln5lUuAM8oSAADO2Rz54hQ336.png </td><td>150-500人                                             </td><td>数据服务                                              </td><td>B轮                                                   </td><td>['股票期权', '弹性工作', '领导好', '五险一金']        </td><td>产品|需求|项目类                                      </td><td>产品经理                                              </td><td>...                                                   </td><td>0                                                     </td><td>0                                                     </td><td>0                                                     </td><td>NA                                                    </td><td>NA                                                    </td><td>0                                                     </td><td>0                                                     </td><td>[]                                                    </td><td>FALSE                                                 </td><td>NA                                                    </td></tr>\n",
       "\t<tr><td>5683671                                               </td><td>数据分析实习生 (MJ000087)                             </td><td>   114335                                             </td><td>i/image2/M00/17/C2/CgoB5ln5lUuAM8oSAADO2Rz54hQ336.png </td><td>150-500人                                             </td><td>数据服务                                              </td><td>B轮                                                   </td><td>['股票期权', '弹性工作', '领导好', '五险一金']        </td><td>开发|测试|运维类                                      </td><td>后端开发                                              </td><td>...                                                   </td><td>0                                                     </td><td>0                                                     </td><td>0                                                     </td><td>NA                                                    </td><td>NA                                                    </td><td>0                                                     </td><td>0                                                     </td><td>[]                                                    </td><td>FALSE                                                 </td><td>NA                                                    </td></tr>\n",
       "\t<tr><td>6046866                                               </td><td>数据分析师                                            </td><td>   543802                                             </td><td>i/image2/M01/63/3C/CgotOV0ulwOAU8KWAAAsMECc53M647.png </td><td>15-50人                                               </td><td>数据服务                                              </td><td>不需要融资                                            </td><td>[]                                                    </td><td>产品|需求|项目类                                      </td><td>数据分析                                              </td><td>...                                                   </td><td>0                                                     </td><td>0                                                     </td><td>0                                                     </td><td>NA                                                    </td><td>NA                                                    </td><td>0                                                     </td><td>0                                                     </td><td>[]                                                    </td><td>FALSE                                                 </td><td>2号线     , 文新;2号线, 三坝                          </td></tr>\n",
       "\t<tr><td>6813626                                               </td><td>资深数据分析专员                                      </td><td>   165939                                             </td><td>i/image3/M01/65/71/CgpOIF5CFp2ACoo9AAD3IkKwlv8861.png </td><td>150-500人                                             </td><td>数据服务                                              </td><td>不需要融资                                            </td><td>['年底双薪', '带薪年假', '午餐补助', '定期体检']      </td><td>开发|测试|运维类                                      </td><td>数据开发                                              </td><td>...                                                   </td><td>0                                                     </td><td>0                                                     </td><td>0                                                     </td><td>NA                                                    </td><td>NA                                                    </td><td>0                                                     </td><td>0                                                     </td><td>[]                                                    </td><td>FALSE                                                 </td><td>NA                                                    </td></tr>\n",
       "\t<tr><td>6818950                                               </td><td>资深数据分析师                                        </td><td>   165939                                             </td><td>i/image3/M01/65/71/CgpOIF5CFp2ACoo9AAD3IkKwlv8861.png </td><td>150-500人                                             </td><td>数据服务                                              </td><td>不需要融资                                            </td><td>['年底双薪', '带薪年假', '午餐补助', '定期体检']      </td><td>开发|测试|运维类                                      </td><td>数据开发                                              </td><td>...                                                   </td><td>0                                                     </td><td>0                                                     </td><td>0                                                     </td><td>NA                                                    </td><td>NA                                                    </td><td>0                                                     </td><td>0                                                     </td><td>[]                                                    </td><td>FALSE                                                 </td><td>NA                                                    </td></tr>\n",
       "\t<tr><td>6718750                                                                                                                                       </td><td>旅游大数据分析师（杭州）                                                                                                                      </td><td>   122019                                                                                                                                     </td><td>i/image/M00/1A/4A/CgqKkVb583WABT4BAABM5RuPCmk968.png                                                                                          </td><td>50-150人                                                                                                                                      </td><td>数据服务,企业服务                                                                                                                             </td><td>A轮                                                                                                                                           </td><td>['年底双薪', '股票期权', '午餐补助', '定期体检']                                                                                              </td><td>开发|测试|运维类                                                                                                                              </td><td>数据开发                                                                                                                                      </td><td>...                                                                                                                                           </td><td>0                                                                                                                                             </td><td>0                                                                                                                                             </td><td>0                                                                                                                                             </td><td>NA                                                                                                                                            </td><td>NA                                                                                                                                            </td><td>0                                                                                                                                             </td><td>0                                                                                                                                             </td><td>[]                                                                                                                                            </td><td>FALSE                                                                                                                                         </td><td>1号线         , 定安路;1号线  , 龙翔桥;1号线  , 凤起路;1号线  , 定安路;1号线  , 龙翔桥;1号线  , 凤起路;2号线  , 中河北路;2号线, 凤起路        </td></tr>\n",
       "\t<tr><td>6655562                                               </td><td>数据分析建模工程师                                    </td><td>117422215                                             </td><td>i/image2/M01/AF/6D/CgotOV3ki4iAOuo3AABbilI8DfA441.png </td><td>50-150人                                              </td><td>数据服务,信息安全                                     </td><td>A轮                                                   </td><td>['午餐补助', '带薪年假', '16到18薪', '法定节假日']    </td><td>开发|测试|运维类                                      </td><td>人工智能                                              </td><td>...                                                   </td><td>0                                                     </td><td>0                                                     </td><td>0                                                     </td><td>NA                                                    </td><td>NA                                                    </td><td>0                                                     </td><td>0                                                     </td><td>[]                                                    </td><td>FALSE                                                 </td><td>2号线       , 古翠路;2号线, 丰潭路                    </td></tr>\n",
       "\t<tr><td>6677939                                               </td><td>数据分析建模工程师（校招）                            </td><td>117422215                                             </td><td>i/image2/M01/AF/6D/CgotOV3ki4iAOuo3AABbilI8DfA441.png </td><td>50-150人                                              </td><td>数据服务,信息安全                                     </td><td>A轮                                                   </td><td>['午餐补助', '带薪年假', '16到18薪', '法定节假日']    </td><td>开发|测试|运维类                                      </td><td>人工智能                                              </td><td>...                                                   </td><td>0                                                     </td><td>0                                                     </td><td>0                                                     </td><td>NA                                                    </td><td>NA                                                    </td><td>0                                                     </td><td>0                                                     </td><td>[]                                                    </td><td>FALSE                                                 </td><td>2号线       , 古翠路;2号线, 丰潭路                    </td></tr>\n",
       "</tbody>\n",
       "</table>\n"
      ],
      "text/latex": [
       "\\begin{tabular}{r|llllllllllllllllllllllllllllllllllllllllllllllllllllll}\n",
       " positionId & positionName & companyId & companyLogo & companySize & industryField & financeStage & companyLabelList & firstType & secondType & ... & pcShow & appShow & deliver & gradeDescription & promotionScoreExplain & isHotHire & count & aggregatePositionIds & famousCompany & split\\\\\n",
       "\\hline\n",
       "\t 6458372                                                    & 数据分析专家                                               &     34132                                                  & i/image2/M01/F8/DE/CgoB5lyHTJeAP7v9AAFXUt4zJo4515.png      & 150-500人                                                  & 数据服务,广告营销                                          & A轮                                                        & {[}'开放式办公', '扁平管理', '带薪假期', '弹性工作时间'{]} & 产品\\textbar{}需求\\textbar{}项目类                       & 数据分析                                                   & ...                                                        & 0                                                          & 0                                                          & 0                                                          & NA                                                         & NA                                                         & 0                                                          & 0                                                          & {[}{]}                                                     & FALSE                                                      & NA                                                        \\\\\n",
       "\t 6804629                                                    & 数据分析师                                                 &     34132                                                  & i/image2/M01/F8/DE/CgoB5lyHTJeAP7v9AAFXUt4zJo4515.png      & 150-500人                                                  & 数据服务,广告营销                                          & A轮                                                        & {[}'开放式办公', '扁平管理', '带薪假期', '弹性工作时间'{]} & 产品\\textbar{}需求\\textbar{}项目类                       & 数据分析                                                   & ...                                                        & 0                                                          & 0                                                          & 0                                                          & NA                                                         & NA                                                         & 0                                                          & 0                                                          & {[}{]}                                                     & FALSE                                                      & NA                                                        \\\\\n",
       "\t 6804489                                                    & 资深数据分析师                                             &     34132                                                  & i/image2/M01/F8/DE/CgoB5lyHTJeAP7v9AAFXUt4zJo4515.png      & 150-500人                                                  & 数据服务,广告营销                                          & A轮                                                        & {[}'开放式办公', '扁平管理', '带薪假期', '弹性工作时间'{]} & 开发\\textbar{}测试\\textbar{}运维类                       & 数据开发                                                   & ...                                                        & 0                                                          & 0                                                          & 0                                                          & NA                                                         & NA                                                         & 0                                                          & 0                                                          & {[}{]}                                                     & FALSE                                                      & NA                                                        \\\\\n",
       "\t 6267370                                                    & 数据分析专家                                               &     31544                                                  & image1/M00/00/48/CgYXBlTUXOaADKooAABjQoD\\_n1w508.png      & 150-500人                                                  & 数据服务                                                   & 不需要融资                                                 & {[}'专业红娘牵线', '节日礼物', '技能培训', '岗位晋升'{]}   & 开发\\textbar{}测试\\textbar{}运维类                       & 数据开发                                                   & ...                                                        & 0                                                          & 0                                                          & 0                                                          & NA                                                         & NA                                                         & 0                                                          & 0                                                          & {[}{]}                                                     & FALSE                                                      & 4号线           , 中医药大学;4号线, 联庄                  \\\\\n",
       "\t 6804489                                                    & 资深数据分析师                                             &     34132                                                  & i/image2/M01/F8/DE/CgoB5lyHTJeAP7v9AAFXUt4zJo4515.png      & 150-500人                                                  & 数据服务,广告营销                                          & A轮                                                        & {[}'开放式办公', '扁平管理', '带薪假期', '弹性工作时间'{]} & 开发\\textbar{}测试\\textbar{}运维类                       & 数据开发                                                   & ...                                                        & 0                                                          & 0                                                          & 0                                                          & NA                                                         & NA                                                         & 0                                                          & 0                                                          & {[}{]}                                                     & FALSE                                                      & NA                                                        \\\\\n",
       "\t 6242470                                                    & 数据分析师                                                 &     31544                                                  & image1/M00/00/48/CgYXBlTUXOaADKooAABjQoD\\_n1w508.png      & 150-500人                                                  & 数据服务                                                   & 不需要融资                                                 & {[}'专业红娘牵线', '节日礼物', '技能培训', '岗位晋升'{]}   & 产品\\textbar{}需求\\textbar{}项目类                       & 数据分析                                                   & ...                                                        & 0                                                          & 0                                                          & 0                                                          & NA                                                         & NA                                                         & 0                                                          & 0                                                          & {[}{]}                                                     & FALSE                                                      & 4号线           , 中医药大学;4号线, 联庄                  \\\\\n",
       "\t 6680900                                                    & 数据分析师 (MJ000250)                                      &    114335                                                  & i/image2/M00/17/C2/CgoB5ln5lUuAM8oSAADO2Rz54hQ336.png      & 150-500人                                                  & 数据服务                                                   & B轮                                                        & {[}'股票期权', '弹性工作', '领导好', '五险一金'{]}         & 产品\\textbar{}需求\\textbar{}项目类                       & 产品经理                                                   & ...                                                        & 0                                                          & 0                                                          & 0                                                          & NA                                                         & NA                                                         & 0                                                          & 0                                                          & {[}{]}                                                     & FALSE                                                      & NA                                                        \\\\\n",
       "\t 6680900                                                    & 数据分析师 (MJ000250)                                      &    114335                                                  & i/image2/M00/17/C2/CgoB5ln5lUuAM8oSAADO2Rz54hQ336.png      & 150-500人                                                  & 数据服务                                                   & B轮                                                        & {[}'股票期权', '弹性工作', '领导好', '五险一金'{]}         & 产品\\textbar{}需求\\textbar{}项目类                       & 产品经理                                                   & ...                                                        & 0                                                          & 0                                                          & 0                                                          & NA                                                         & NA                                                         & 0                                                          & 0                                                          & {[}{]}                                                     & FALSE                                                      & NA                                                        \\\\\n",
       "\t 5683671                                                    & 数据分析实习生 (MJ000087)                                  &    114335                                                  & i/image2/M00/17/C2/CgoB5ln5lUuAM8oSAADO2Rz54hQ336.png      & 150-500人                                                  & 数据服务                                                   & B轮                                                        & {[}'股票期权', '弹性工作', '领导好', '五险一金'{]}         & 开发\\textbar{}测试\\textbar{}运维类                       & 后端开发                                                   & ...                                                        & 0                                                          & 0                                                          & 0                                                          & NA                                                         & NA                                                         & 0                                                          & 0                                                          & {[}{]}                                                     & FALSE                                                      & NA                                                        \\\\\n",
       "\t 6046866                                                    & 数据分析师                                                 &    543802                                                  & i/image2/M01/63/3C/CgotOV0ulwOAU8KWAAAsMECc53M647.png      & 15-50人                                                    & 数据服务                                                   & 不需要融资                                                 & {[}{]}                                                     & 产品\\textbar{}需求\\textbar{}项目类                       & 数据分析                                                   & ...                                                        & 0                                                          & 0                                                          & 0                                                          & NA                                                         & NA                                                         & 0                                                          & 0                                                          & {[}{]}                                                     & FALSE                                                      & 2号线     , 文新;2号线, 三坝                              \\\\\n",
       "\t 6813626                                                    & 资深数据分析专员                                           &    165939                                                  & i/image3/M01/65/71/CgpOIF5CFp2ACoo9AAD3IkKwlv8861.png      & 150-500人                                                  & 数据服务                                                   & 不需要融资                                                 & {[}'年底双薪', '带薪年假', '午餐补助', '定期体检'{]}       & 开发\\textbar{}测试\\textbar{}运维类                       & 数据开发                                                   & ...                                                        & 0                                                          & 0                                                          & 0                                                          & NA                                                         & NA                                                         & 0                                                          & 0                                                          & {[}{]}                                                     & FALSE                                                      & NA                                                        \\\\\n",
       "\t 6818950                                                    & 资深数据分析师                                             &    165939                                                  & i/image3/M01/65/71/CgpOIF5CFp2ACoo9AAD3IkKwlv8861.png      & 150-500人                                                  & 数据服务                                                   & 不需要融资                                                 & {[}'年底双薪', '带薪年假', '午餐补助', '定期体检'{]}       & 开发\\textbar{}测试\\textbar{}运维类                       & 数据开发                                                   & ...                                                        & 0                                                          & 0                                                          & 0                                                          & NA                                                         & NA                                                         & 0                                                          & 0                                                          & {[}{]}                                                     & FALSE                                                      & NA                                                        \\\\\n",
       "\t 6718750                                                                                                                                        & 旅游大数据分析师（杭州）                                                                                                                       &    122019                                                                                                                                      & i/image/M00/1A/4A/CgqKkVb583WABT4BAABM5RuPCmk968.png                                                                                           & 50-150人                                                                                                                                       & 数据服务,企业服务                                                                                                                              & A轮                                                                                                                                            & {[}'年底双薪', '股票期权', '午餐补助', '定期体检'{]}                                                                                           & 开发\\textbar{}测试\\textbar{}运维类                                                                                                           & 数据开发                                                                                                                                       & ...                                                                                                                                            & 0                                                                                                                                              & 0                                                                                                                                              & 0                                                                                                                                              & NA                                                                                                                                             & NA                                                                                                                                             & 0                                                                                                                                              & 0                                                                                                                                              & {[}{]}                                                                                                                                         & FALSE                                                                                                                                          & 1号线         , 定安路;1号线  , 龙翔桥;1号线  , 凤起路;1号线  , 定安路;1号线  , 龙翔桥;1号线  , 凤起路;2号线  , 中河北路;2号线, 凤起路        \\\\\n",
       "\t 6655562                                                    & 数据分析建模工程师                                         & 117422215                                                  & i/image2/M01/AF/6D/CgotOV3ki4iAOuo3AABbilI8DfA441.png      & 50-150人                                                   & 数据服务,信息安全                                          & A轮                                                        & {[}'午餐补助', '带薪年假', '16到18薪', '法定节假日'{]}     & 开发\\textbar{}测试\\textbar{}运维类                       & 人工智能                                                   & ...                                                        & 0                                                          & 0                                                          & 0                                                          & NA                                                         & NA                                                         & 0                                                          & 0                                                          & {[}{]}                                                     & FALSE                                                      & 2号线       , 古翠路;2号线, 丰潭路                        \\\\\n",
       "\t 6677939                                                    & 数据分析建模工程师（校招）                                 & 117422215                                                  & i/image2/M01/AF/6D/CgotOV3ki4iAOuo3AABbilI8DfA441.png      & 50-150人                                                   & 数据服务,信息安全                                          & A轮                                                        & {[}'午餐补助', '带薪年假', '16到18薪', '法定节假日'{]}     & 开发\\textbar{}测试\\textbar{}运维类                       & 人工智能                                                   & ...                                                        & 0                                                          & 0                                                          & 0                                                          & NA                                                         & NA                                                         & 0                                                          & 0                                                          & {[}{]}                                                     & FALSE                                                      & 2号线       , 古翠路;2号线, 丰潭路                        \\\\\n",
       "\\end{tabular}\n"
      ],
      "text/markdown": [
       "\n",
       "positionId | positionName | companyId | companyLogo | companySize | industryField | financeStage | companyLabelList | firstType | secondType | ... | pcShow | appShow | deliver | gradeDescription | promotionScoreExplain | isHotHire | count | aggregatePositionIds | famousCompany | split | \n",
       "|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|\n",
       "| 6458372                                                | 数据分析专家                                           |     34132                                              | i/image2/M01/F8/DE/CgoB5lyHTJeAP7v9AAFXUt4zJo4515.png  | 150-500人                                              | 数据服务,广告营销                                      | A轮                                                    | ['开放式办公', '扁平管理', '带薪假期', '弹性工作时间'] | 产品|需求|项目类                                       | 数据分析                                               | ...                                                    | 0                                                      | 0                                                      | 0                                                      | NA                                                     | NA                                                     | 0                                                      | 0                                                      | []                                                     | FALSE                                                  | NA                                                     | \n",
       "| 6804629                                                | 数据分析师                                             |     34132                                              | i/image2/M01/F8/DE/CgoB5lyHTJeAP7v9AAFXUt4zJo4515.png  | 150-500人                                              | 数据服务,广告营销                                      | A轮                                                    | ['开放式办公', '扁平管理', '带薪假期', '弹性工作时间'] | 产品|需求|项目类                                       | 数据分析                                               | ...                                                    | 0                                                      | 0                                                      | 0                                                      | NA                                                     | NA                                                     | 0                                                      | 0                                                      | []                                                     | FALSE                                                  | NA                                                     | \n",
       "| 6804489                                                | 资深数据分析师                                         |     34132                                              | i/image2/M01/F8/DE/CgoB5lyHTJeAP7v9AAFXUt4zJo4515.png  | 150-500人                                              | 数据服务,广告营销                                      | A轮                                                    | ['开放式办公', '扁平管理', '带薪假期', '弹性工作时间'] | 开发|测试|运维类                                       | 数据开发                                               | ...                                                    | 0                                                      | 0                                                      | 0                                                      | NA                                                     | NA                                                     | 0                                                      | 0                                                      | []                                                     | FALSE                                                  | NA                                                     | \n",
       "| 6267370                                                | 数据分析专家                                           |     31544                                              | image1/M00/00/48/CgYXBlTUXOaADKooAABjQoD_n1w508.png    | 150-500人                                              | 数据服务                                               | 不需要融资                                             | ['专业红娘牵线', '节日礼物', '技能培训', '岗位晋升']   | 开发|测试|运维类                                       | 数据开发                                               | ...                                                    | 0                                                      | 0                                                      | 0                                                      | NA                                                     | NA                                                     | 0                                                      | 0                                                      | []                                                     | FALSE                                                  | 4号线           , 中医药大学;4号线, 联庄               | \n",
       "| 6804489                                                | 资深数据分析师                                         |     34132                                              | i/image2/M01/F8/DE/CgoB5lyHTJeAP7v9AAFXUt4zJo4515.png  | 150-500人                                              | 数据服务,广告营销                                      | A轮                                                    | ['开放式办公', '扁平管理', '带薪假期', '弹性工作时间'] | 开发|测试|运维类                                       | 数据开发                                               | ...                                                    | 0                                                      | 0                                                      | 0                                                      | NA                                                     | NA                                                     | 0                                                      | 0                                                      | []                                                     | FALSE                                                  | NA                                                     | \n",
       "| 6242470                                                | 数据分析师                                             |     31544                                              | image1/M00/00/48/CgYXBlTUXOaADKooAABjQoD_n1w508.png    | 150-500人                                              | 数据服务                                               | 不需要融资                                             | ['专业红娘牵线', '节日礼物', '技能培训', '岗位晋升']   | 产品|需求|项目类                                       | 数据分析                                               | ...                                                    | 0                                                      | 0                                                      | 0                                                      | NA                                                     | NA                                                     | 0                                                      | 0                                                      | []                                                     | FALSE                                                  | 4号线           , 中医药大学;4号线, 联庄               | \n",
       "| 6680900                                                | 数据分析师 (MJ000250)                                  |    114335                                              | i/image2/M00/17/C2/CgoB5ln5lUuAM8oSAADO2Rz54hQ336.png  | 150-500人                                              | 数据服务                                               | B轮                                                    | ['股票期权', '弹性工作', '领导好', '五险一金']         | 产品|需求|项目类                                       | 产品经理                                               | ...                                                    | 0                                                      | 0                                                      | 0                                                      | NA                                                     | NA                                                     | 0                                                      | 0                                                      | []                                                     | FALSE                                                  | NA                                                     | \n",
       "| 6680900                                                | 数据分析师 (MJ000250)                                  |    114335                                              | i/image2/M00/17/C2/CgoB5ln5lUuAM8oSAADO2Rz54hQ336.png  | 150-500人                                              | 数据服务                                               | B轮                                                    | ['股票期权', '弹性工作', '领导好', '五险一金']         | 产品|需求|项目类                                       | 产品经理                                               | ...                                                    | 0                                                      | 0                                                      | 0                                                      | NA                                                     | NA                                                     | 0                                                      | 0                                                      | []                                                     | FALSE                                                  | NA                                                     | \n",
       "| 5683671                                                | 数据分析实习生 (MJ000087)                              |    114335                                              | i/image2/M00/17/C2/CgoB5ln5lUuAM8oSAADO2Rz54hQ336.png  | 150-500人                                              | 数据服务                                               | B轮                                                    | ['股票期权', '弹性工作', '领导好', '五险一金']         | 开发|测试|运维类                                       | 后端开发                                               | ...                                                    | 0                                                      | 0                                                      | 0                                                      | NA                                                     | NA                                                     | 0                                                      | 0                                                      | []                                                     | FALSE                                                  | NA                                                     | \n",
       "| 6046866                                                | 数据分析师                                             |    543802                                              | i/image2/M01/63/3C/CgotOV0ulwOAU8KWAAAsMECc53M647.png  | 15-50人                                                | 数据服务                                               | 不需要融资                                             | []                                                     | 产品|需求|项目类                                       | 数据分析                                               | ...                                                    | 0                                                      | 0                                                      | 0                                                      | NA                                                     | NA                                                     | 0                                                      | 0                                                      | []                                                     | FALSE                                                  | 2号线     , 文新;2号线, 三坝                           | \n",
       "| 6813626                                                | 资深数据分析专员                                       |    165939                                              | i/image3/M01/65/71/CgpOIF5CFp2ACoo9AAD3IkKwlv8861.png  | 150-500人                                              | 数据服务                                               | 不需要融资                                             | ['年底双薪', '带薪年假', '午餐补助', '定期体检']       | 开发|测试|运维类                                       | 数据开发                                               | ...                                                    | 0                                                      | 0                                                      | 0                                                      | NA                                                     | NA                                                     | 0                                                      | 0                                                      | []                                                     | FALSE                                                  | NA                                                     | \n",
       "| 6818950                                                | 资深数据分析师                                         |    165939                                              | i/image3/M01/65/71/CgpOIF5CFp2ACoo9AAD3IkKwlv8861.png  | 150-500人                                              | 数据服务                                               | 不需要融资                                             | ['年底双薪', '带薪年假', '午餐补助', '定期体检']       | 开发|测试|运维类                                       | 数据开发                                               | ...                                                    | 0                                                      | 0                                                      | 0                                                      | NA                                                     | NA                                                     | 0                                                      | 0                                                      | []                                                     | FALSE                                                  | NA                                                     | \n",
       "| 6718750                                                                                                                                        | 旅游大数据分析师（杭州）                                                                                                                       |    122019                                                                                                                                      | i/image/M00/1A/4A/CgqKkVb583WABT4BAABM5RuPCmk968.png                                                                                           | 50-150人                                                                                                                                       | 数据服务,企业服务                                                                                                                              | A轮                                                                                                                                            | ['年底双薪', '股票期权', '午餐补助', '定期体检']                                                                                               | 开发|测试|运维类                                                                                                                               | 数据开发                                                                                                                                       | ...                                                                                                                                            | 0                                                                                                                                              | 0                                                                                                                                              | 0                                                                                                                                              | NA                                                                                                                                             | NA                                                                                                                                             | 0                                                                                                                                              | 0                                                                                                                                              | []                                                                                                                                             | FALSE                                                                                                                                          | 1号线         , 定安路;1号线  , 龙翔桥;1号线  , 凤起路;1号线  , 定安路;1号线  , 龙翔桥;1号线  , 凤起路;2号线  , 中河北路;2号线, 凤起路         | \n",
       "| 6655562                                                | 数据分析建模工程师                                     | 117422215                                              | i/image2/M01/AF/6D/CgotOV3ki4iAOuo3AABbilI8DfA441.png  | 50-150人                                               | 数据服务,信息安全                                      | A轮                                                    | ['午餐补助', '带薪年假', '16到18薪', '法定节假日']     | 开发|测试|运维类                                       | 人工智能                                               | ...                                                    | 0                                                      | 0                                                      | 0                                                      | NA                                                     | NA                                                     | 0                                                      | 0                                                      | []                                                     | FALSE                                                  | 2号线       , 古翠路;2号线, 丰潭路                     | \n",
       "| 6677939                                                | 数据分析建模工程师（校招）                             | 117422215                                              | i/image2/M01/AF/6D/CgotOV3ki4iAOuo3AABbilI8DfA441.png  | 50-150人                                               | 数据服务,信息安全                                      | A轮                                                    | ['午餐补助', '带薪年假', '16到18薪', '法定节假日']     | 开发|测试|运维类                                       | 人工智能                                               | ...                                                    | 0                                                      | 0                                                      | 0                                                      | NA                                                     | NA                                                     | 0                                                      | 0                                                      | []                                                     | FALSE                                                  | 2号线       , 古翠路;2号线, 丰潭路                     | \n",
       "\n",
       "\n"
      ],
      "text/plain": [
       "   positionId positionName               companyId\n",
       "1  6458372    数据分析专家                   34132\n",
       "2  6804629    数据分析师                     34132\n",
       "3  6804489    资深数据分析师                 34132\n",
       "4  6267370    数据分析专家                   31544\n",
       "5  6804489    资深数据分析师                 34132\n",
       "6  6242470    数据分析师                     31544\n",
       "7  6680900    数据分析师 (MJ000250)         114335\n",
       "8  6680900    数据分析师 (MJ000250)         114335\n",
       "9  5683671    数据分析实习生 (MJ000087)     114335\n",
       "10 6046866    数据分析师                    543802\n",
       "11 6813626    资深数据分析专员              165939\n",
       "12 6818950    资深数据分析师                165939\n",
       "13 6718750    旅游大数据分析师（杭州）      122019\n",
       "14 6655562    数据分析建模工程师         117422215\n",
       "15 6677939    数据分析建模工程师（校招） 117422215\n",
       "   companyLogo                                           companySize\n",
       "1  i/image2/M01/F8/DE/CgoB5lyHTJeAP7v9AAFXUt4zJo4515.png 150-500人  \n",
       "2  i/image2/M01/F8/DE/CgoB5lyHTJeAP7v9AAFXUt4zJo4515.png 150-500人  \n",
       "3  i/image2/M01/F8/DE/CgoB5lyHTJeAP7v9AAFXUt4zJo4515.png 150-500人  \n",
       "4  image1/M00/00/48/CgYXBlTUXOaADKooAABjQoD_n1w508.png   150-500人  \n",
       "5  i/image2/M01/F8/DE/CgoB5lyHTJeAP7v9AAFXUt4zJo4515.png 150-500人  \n",
       "6  image1/M00/00/48/CgYXBlTUXOaADKooAABjQoD_n1w508.png   150-500人  \n",
       "7  i/image2/M00/17/C2/CgoB5ln5lUuAM8oSAADO2Rz54hQ336.png 150-500人  \n",
       "8  i/image2/M00/17/C2/CgoB5ln5lUuAM8oSAADO2Rz54hQ336.png 150-500人  \n",
       "9  i/image2/M00/17/C2/CgoB5ln5lUuAM8oSAADO2Rz54hQ336.png 150-500人  \n",
       "10 i/image2/M01/63/3C/CgotOV0ulwOAU8KWAAAsMECc53M647.png 15-50人    \n",
       "11 i/image3/M01/65/71/CgpOIF5CFp2ACoo9AAD3IkKwlv8861.png 150-500人  \n",
       "12 i/image3/M01/65/71/CgpOIF5CFp2ACoo9AAD3IkKwlv8861.png 150-500人  \n",
       "13 i/image/M00/1A/4A/CgqKkVb583WABT4BAABM5RuPCmk968.png  50-150人   \n",
       "14 i/image2/M01/AF/6D/CgotOV3ki4iAOuo3AABbilI8DfA441.png 50-150人   \n",
       "15 i/image2/M01/AF/6D/CgotOV3ki4iAOuo3AABbilI8DfA441.png 50-150人   \n",
       "   industryField     financeStage\n",
       "1  数据服务,广告营销 A轮         \n",
       "2  数据服务,广告营销 A轮         \n",
       "3  数据服务,广告营销 A轮         \n",
       "4  数据服务          不需要融资  \n",
       "5  数据服务,广告营销 A轮         \n",
       "6  数据服务          不需要融资  \n",
       "7  数据服务          B轮         \n",
       "8  数据服务          B轮         \n",
       "9  数据服务          B轮         \n",
       "10 数据服务          不需要融资  \n",
       "11 数据服务          不需要融资  \n",
       "12 数据服务          不需要融资  \n",
       "13 数据服务,企业服务 A轮         \n",
       "14 数据服务,信息安全 A轮         \n",
       "15 数据服务,信息安全 A轮         \n",
       "   companyLabelList                                       firstType       \n",
       "1  ['开放式办公', '扁平管理', '带薪假期', '弹性工作时间'] 产品|需求|项目类\n",
       "2  ['开放式办公', '扁平管理', '带薪假期', '弹性工作时间'] 产品|需求|项目类\n",
       "3  ['开放式办公', '扁平管理', '带薪假期', '弹性工作时间'] 开发|测试|运维类\n",
       "4  ['专业红娘牵线', '节日礼物', '技能培训', '岗位晋升']   开发|测试|运维类\n",
       "5  ['开放式办公', '扁平管理', '带薪假期', '弹性工作时间'] 开发|测试|运维类\n",
       "6  ['专业红娘牵线', '节日礼物', '技能培训', '岗位晋升']   产品|需求|项目类\n",
       "7  ['股票期权', '弹性工作', '领导好', '五险一金']         产品|需求|项目类\n",
       "8  ['股票期权', '弹性工作', '领导好', '五险一金']         产品|需求|项目类\n",
       "9  ['股票期权', '弹性工作', '领导好', '五险一金']         开发|测试|运维类\n",
       "10 []                                                     产品|需求|项目类\n",
       "11 ['年底双薪', '带薪年假', '午餐补助', '定期体检']       开发|测试|运维类\n",
       "12 ['年底双薪', '带薪年假', '午餐补助', '定期体检']       开发|测试|运维类\n",
       "13 ['年底双薪', '股票期权', '午餐补助', '定期体检']       开发|测试|运维类\n",
       "14 ['午餐补助', '带薪年假', '16到18薪', '法定节假日']     开发|测试|运维类\n",
       "15 ['午餐补助', '带薪年假', '16到18薪', '法定节假日']     开发|测试|运维类\n",
       "   secondType ... pcShow appShow deliver gradeDescription promotionScoreExplain\n",
       "1  数据分析   ... 0      0       0       NA               NA                   \n",
       "2  数据分析   ... 0      0       0       NA               NA                   \n",
       "3  数据开发   ... 0      0       0       NA               NA                   \n",
       "4  数据开发   ... 0      0       0       NA               NA                   \n",
       "5  数据开发   ... 0      0       0       NA               NA                   \n",
       "6  数据分析   ... 0      0       0       NA               NA                   \n",
       "7  产品经理   ... 0      0       0       NA               NA                   \n",
       "8  产品经理   ... 0      0       0       NA               NA                   \n",
       "9  后端开发   ... 0      0       0       NA               NA                   \n",
       "10 数据分析   ... 0      0       0       NA               NA                   \n",
       "11 数据开发   ... 0      0       0       NA               NA                   \n",
       "12 数据开发   ... 0      0       0       NA               NA                   \n",
       "13 数据开发   ... 0      0       0       NA               NA                   \n",
       "14 人工智能   ... 0      0       0       NA               NA                   \n",
       "15 人工智能   ... 0      0       0       NA               NA                   \n",
       "   isHotHire count aggregatePositionIds famousCompany\n",
       "1  0         0     []                   FALSE        \n",
       "2  0         0     []                   FALSE        \n",
       "3  0         0     []                   FALSE        \n",
       "4  0         0     []                   FALSE        \n",
       "5  0         0     []                   FALSE        \n",
       "6  0         0     []                   FALSE        \n",
       "7  0         0     []                   FALSE        \n",
       "8  0         0     []                   FALSE        \n",
       "9  0         0     []                   FALSE        \n",
       "10 0         0     []                   FALSE        \n",
       "11 0         0     []                   FALSE        \n",
       "12 0         0     []                   FALSE        \n",
       "13 0         0     []                   FALSE        \n",
       "14 0         0     []                   FALSE        \n",
       "15 0         0     []                   FALSE        \n",
       "   split                                                                                                                                         \n",
       "1  NA                                                                                                                                            \n",
       "2  NA                                                                                                                                            \n",
       "3  NA                                                                                                                                            \n",
       "4  4号线           , 中医药大学;4号线, 联庄                                                                                                      \n",
       "5  NA                                                                                                                                            \n",
       "6  4号线           , 中医药大学;4号线, 联庄                                                                                                      \n",
       "7  NA                                                                                                                                            \n",
       "8  NA                                                                                                                                            \n",
       "9  NA                                                                                                                                            \n",
       "10 2号线     , 文新;2号线, 三坝                                                                                                                  \n",
       "11 NA                                                                                                                                            \n",
       "12 NA                                                                                                                                            \n",
       "13 1号线         , 定安路;1号线  , 龙翔桥;1号线  , 凤起路;1号线  , 定安路;1号线  , 龙翔桥;1号线  , 凤起路;2号线  , 中河北路;2号线, 凤起路        \n",
       "14 2号线       , 古翠路;2号线, 丰潭路                                                                                                            \n",
       "15 2号线       , 古翠路;2号线, 丰潭路                                                                                                            "
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "df[grep(\"^数据\", df$industryField),]"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 117.以salary score 和 positionID制作数据透视"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 115,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<table>\n",
       "<thead><tr><th></th><th scope=col>salary</th><th scope=col>score</th></tr></thead>\n",
       "<tbody>\n",
       "\t<tr><th scope=row>5203054</th><td>30000</td><td>  4.0</td></tr>\n",
       "\t<tr><th scope=row>5204912</th><td>15000</td><td>176.0</td></tr>\n",
       "\t<tr><th scope=row>5269002</th><td>37500</td><td>  1.0</td></tr>\n",
       "\t<tr><th scope=row>5453691</th><td>30000</td><td>  4.0</td></tr>\n",
       "\t<tr><th scope=row>5519962</th><td>37500</td><td> 14.0</td></tr>\n",
       "\t<tr><th scope=row>5520623</th><td>30000</td><td>  6.0</td></tr>\n",
       "\t<tr><th scope=row>5559894</th><td>30000</td><td> 12.0</td></tr>\n",
       "\t<tr><th scope=row>5604926</th><td>27500</td><td>  6.0</td></tr>\n",
       "\t<tr><th scope=row>5683671</th><td>26500</td><td>  3.0</td></tr>\n",
       "\t<tr><th scope=row>5921220</th><td>37500</td><td>  4.5</td></tr>\n",
       "\t<tr><th scope=row>5927901</th><td>30000</td><td>  7.0</td></tr>\n",
       "\t<tr><th scope=row>5978750</th><td>40000</td><td>  4.0</td></tr>\n",
       "\t<tr><th scope=row>5990647</th><td>28750</td><td>  4.5</td></tr>\n",
       "\t<tr><th scope=row>6037742</th><td>25000</td><td>  4.0</td></tr>\n",
       "\t<tr><th scope=row>6046775</th><td>30000</td><td>  5.0</td></tr>\n",
       "\t<tr><th scope=row>6046866</th><td>37500</td><td>  3.0</td></tr>\n",
       "\t<tr><th scope=row>6067812</th><td>22500</td><td>  5.0</td></tr>\n",
       "\t<tr><th scope=row>6095231</th><td>40000</td><td>  2.0</td></tr>\n",
       "\t<tr><th scope=row>6116460</th><td>45000</td><td>  4.0</td></tr>\n",
       "\t<tr><th scope=row>6191993</th><td>23750</td><td>  4.5</td></tr>\n",
       "\t<tr><th scope=row>6228290</th><td>37500</td><td>  5.0</td></tr>\n",
       "\t<tr><th scope=row>6234992</th><td>41250</td><td>  6.0</td></tr>\n",
       "\t<tr><th scope=row>6242470</th><td>22500</td><td>  5.0</td></tr>\n",
       "\t<tr><th scope=row>6267370</th><td>20000</td><td>  7.0</td></tr>\n",
       "\t<tr><th scope=row>6284662</th><td>40000</td><td>  5.0</td></tr>\n",
       "\t<tr><th scope=row>6310387</th><td>30000</td><td>  3.0</td></tr>\n",
       "\t<tr><th scope=row>6339988</th><td>45000</td><td>  5.0</td></tr>\n",
       "\t<tr><th scope=row>6344146</th><td>24000</td><td>  5.0</td></tr>\n",
       "\t<tr><th scope=row>6456921</th><td>50000</td><td>  1.0</td></tr>\n",
       "\t<tr><th scope=row>6458372</th><td>60000</td><td> 24.0</td></tr>\n",
       "\t<tr><th scope=row>...</th><td>...</td><td>...</td></tr>\n",
       "\t<tr><th scope=row>6794326</th><td>24000</td><td>  4  </td></tr>\n",
       "\t<tr><th scope=row>6802721</th><td>37500</td><td>233  </td></tr>\n",
       "\t<tr><th scope=row>6803432</th><td>30000</td><td>  0  </td></tr>\n",
       "\t<tr><th scope=row>6804489</th><td>33750</td><td> 16  </td></tr>\n",
       "\t<tr><th scope=row>6804629</th><td>30000</td><td> 17  </td></tr>\n",
       "\t<tr><th scope=row>6813626</th><td>30000</td><td>  1  </td></tr>\n",
       "\t<tr><th scope=row>6814233</th><td>30000</td><td>  5  </td></tr>\n",
       "\t<tr><th scope=row>6818950</th><td>30000</td><td>  1  </td></tr>\n",
       "\t<tr><th scope=row>6819289</th><td>30000</td><td>  4  </td></tr>\n",
       "\t<tr><th scope=row>6820395</th><td>60000</td><td>  3  </td></tr>\n",
       "\t<tr><th scope=row>6829277</th><td>27500</td><td> 12  </td></tr>\n",
       "\t<tr><th scope=row>6829736</th><td>30000</td><td>  4  </td></tr>\n",
       "\t<tr><th scope=row>6837340</th><td>30000</td><td>  4  </td></tr>\n",
       "\t<tr><th scope=row>6841659</th><td>30000</td><td> 65  </td></tr>\n",
       "\t<tr><th scope=row>6847013</th><td>30000</td><td> 17  </td></tr>\n",
       "\t<tr><th scope=row>6848382</th><td>45000</td><td>  4  </td></tr>\n",
       "\t<tr><th scope=row>6849100</th><td>35000</td><td>  0  </td></tr>\n",
       "\t<tr><th scope=row>6850849</th><td>32500</td><td>  6  </td></tr>\n",
       "\t<tr><th scope=row>6854920</th><td>37500</td><td>  3  </td></tr>\n",
       "\t<tr><th scope=row>6862245</th><td>22500</td><td>  6  </td></tr>\n",
       "\t<tr><th scope=row>6869123</th><td>37500</td><td>  5  </td></tr>\n",
       "\t<tr><th scope=row>6872125</th><td>37500</td><td>  4  </td></tr>\n",
       "\t<tr><th scope=row>6872841</th><td> 7500</td><td>  3  </td></tr>\n",
       "\t<tr><th scope=row>6877668</th><td> 3500</td><td> 80  </td></tr>\n",
       "\t<tr><th scope=row>6882347</th><td>50000</td><td> 66  </td></tr>\n",
       "\t<tr><th scope=row>6882983</th><td>27500</td><td> 15  </td></tr>\n",
       "\t<tr><th scope=row>6884346</th><td>25000</td><td>  0  </td></tr>\n",
       "\t<tr><th scope=row>6886661</th><td>37500</td><td>  5  </td></tr>\n",
       "\t<tr><th scope=row>6888169</th><td>42500</td><td>  1  </td></tr>\n",
       "\t<tr><th scope=row>6896403</th><td>30000</td><td>  3  </td></tr>\n",
       "</tbody>\n",
       "</table>\n"
      ],
      "text/latex": [
       "\\begin{tabular}{r|ll}\n",
       "  & salary & score\\\\\n",
       "\\hline\n",
       "\t5203054 & 30000 &   4.0\\\\\n",
       "\t5204912 & 15000 & 176.0\\\\\n",
       "\t5269002 & 37500 &   1.0\\\\\n",
       "\t5453691 & 30000 &   4.0\\\\\n",
       "\t5519962 & 37500 &  14.0\\\\\n",
       "\t5520623 & 30000 &   6.0\\\\\n",
       "\t5559894 & 30000 &  12.0\\\\\n",
       "\t5604926 & 27500 &   6.0\\\\\n",
       "\t5683671 & 26500 &   3.0\\\\\n",
       "\t5921220 & 37500 &   4.5\\\\\n",
       "\t5927901 & 30000 &   7.0\\\\\n",
       "\t5978750 & 40000 &   4.0\\\\\n",
       "\t5990647 & 28750 &   4.5\\\\\n",
       "\t6037742 & 25000 &   4.0\\\\\n",
       "\t6046775 & 30000 &   5.0\\\\\n",
       "\t6046866 & 37500 &   3.0\\\\\n",
       "\t6067812 & 22500 &   5.0\\\\\n",
       "\t6095231 & 40000 &   2.0\\\\\n",
       "\t6116460 & 45000 &   4.0\\\\\n",
       "\t6191993 & 23750 &   4.5\\\\\n",
       "\t6228290 & 37500 &   5.0\\\\\n",
       "\t6234992 & 41250 &   6.0\\\\\n",
       "\t6242470 & 22500 &   5.0\\\\\n",
       "\t6267370 & 20000 &   7.0\\\\\n",
       "\t6284662 & 40000 &   5.0\\\\\n",
       "\t6310387 & 30000 &   3.0\\\\\n",
       "\t6339988 & 45000 &   5.0\\\\\n",
       "\t6344146 & 24000 &   5.0\\\\\n",
       "\t6456921 & 50000 &   1.0\\\\\n",
       "\t6458372 & 60000 &  24.0\\\\\n",
       "\t... & ... & ...\\\\\n",
       "\t6794326 & 24000 &   4  \\\\\n",
       "\t6802721 & 37500 & 233  \\\\\n",
       "\t6803432 & 30000 &   0  \\\\\n",
       "\t6804489 & 33750 &  16  \\\\\n",
       "\t6804629 & 30000 &  17  \\\\\n",
       "\t6813626 & 30000 &   1  \\\\\n",
       "\t6814233 & 30000 &   5  \\\\\n",
       "\t6818950 & 30000 &   1  \\\\\n",
       "\t6819289 & 30000 &   4  \\\\\n",
       "\t6820395 & 60000 &   3  \\\\\n",
       "\t6829277 & 27500 &  12  \\\\\n",
       "\t6829736 & 30000 &   4  \\\\\n",
       "\t6837340 & 30000 &   4  \\\\\n",
       "\t6841659 & 30000 &  65  \\\\\n",
       "\t6847013 & 30000 &  17  \\\\\n",
       "\t6848382 & 45000 &   4  \\\\\n",
       "\t6849100 & 35000 &   0  \\\\\n",
       "\t6850849 & 32500 &   6  \\\\\n",
       "\t6854920 & 37500 &   3  \\\\\n",
       "\t6862245 & 22500 &   6  \\\\\n",
       "\t6869123 & 37500 &   5  \\\\\n",
       "\t6872125 & 37500 &   4  \\\\\n",
       "\t6872841 &  7500 &   3  \\\\\n",
       "\t6877668 &  3500 &  80  \\\\\n",
       "\t6882347 & 50000 &  66  \\\\\n",
       "\t6882983 & 27500 &  15  \\\\\n",
       "\t6884346 & 25000 &   0  \\\\\n",
       "\t6886661 & 37500 &   5  \\\\\n",
       "\t6888169 & 42500 &   1  \\\\\n",
       "\t6896403 & 30000 &   3  \\\\\n",
       "\\end{tabular}\n"
      ],
      "text/markdown": [
       "\n",
       "| <!--/--> | salary | score | \n",
       "|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|\n",
       "| 5203054 | 30000 |   4.0 | \n",
       "| 5204912 | 15000 | 176.0 | \n",
       "| 5269002 | 37500 |   1.0 | \n",
       "| 5453691 | 30000 |   4.0 | \n",
       "| 5519962 | 37500 |  14.0 | \n",
       "| 5520623 | 30000 |   6.0 | \n",
       "| 5559894 | 30000 |  12.0 | \n",
       "| 5604926 | 27500 |   6.0 | \n",
       "| 5683671 | 26500 |   3.0 | \n",
       "| 5921220 | 37500 |   4.5 | \n",
       "| 5927901 | 30000 |   7.0 | \n",
       "| 5978750 | 40000 |   4.0 | \n",
       "| 5990647 | 28750 |   4.5 | \n",
       "| 6037742 | 25000 |   4.0 | \n",
       "| 6046775 | 30000 |   5.0 | \n",
       "| 6046866 | 37500 |   3.0 | \n",
       "| 6067812 | 22500 |   5.0 | \n",
       "| 6095231 | 40000 |   2.0 | \n",
       "| 6116460 | 45000 |   4.0 | \n",
       "| 6191993 | 23750 |   4.5 | \n",
       "| 6228290 | 37500 |   5.0 | \n",
       "| 6234992 | 41250 |   6.0 | \n",
       "| 6242470 | 22500 |   5.0 | \n",
       "| 6267370 | 20000 |   7.0 | \n",
       "| 6284662 | 40000 |   5.0 | \n",
       "| 6310387 | 30000 |   3.0 | \n",
       "| 6339988 | 45000 |   5.0 | \n",
       "| 6344146 | 24000 |   5.0 | \n",
       "| 6456921 | 50000 |   1.0 | \n",
       "| 6458372 | 60000 |  24.0 | \n",
       "| ... | ... | ... | \n",
       "| 6794326 | 24000 |   4   | \n",
       "| 6802721 | 37500 | 233   | \n",
       "| 6803432 | 30000 |   0   | \n",
       "| 6804489 | 33750 |  16   | \n",
       "| 6804629 | 30000 |  17   | \n",
       "| 6813626 | 30000 |   1   | \n",
       "| 6814233 | 30000 |   5   | \n",
       "| 6818950 | 30000 |   1   | \n",
       "| 6819289 | 30000 |   4   | \n",
       "| 6820395 | 60000 |   3   | \n",
       "| 6829277 | 27500 |  12   | \n",
       "| 6829736 | 30000 |   4   | \n",
       "| 6837340 | 30000 |   4   | \n",
       "| 6841659 | 30000 |  65   | \n",
       "| 6847013 | 30000 |  17   | \n",
       "| 6848382 | 45000 |   4   | \n",
       "| 6849100 | 35000 |   0   | \n",
       "| 6850849 | 32500 |   6   | \n",
       "| 6854920 | 37500 |   3   | \n",
       "| 6862245 | 22500 |   6   | \n",
       "| 6869123 | 37500 |   5   | \n",
       "| 6872125 | 37500 |   4   | \n",
       "| 6872841 |  7500 |   3   | \n",
       "| 6877668 |  3500 |  80   | \n",
       "| 6882347 | 50000 |  66   | \n",
       "| 6882983 | 27500 |  15   | \n",
       "| 6884346 | 25000 |   0   | \n",
       "| 6886661 | 37500 |   5   | \n",
       "| 6888169 | 42500 |   1   | \n",
       "| 6896403 | 30000 |   3   | \n",
       "\n",
       "\n"
      ],
      "text/plain": [
       "        salary score\n",
       "5203054 30000    4.0\n",
       "5204912 15000  176.0\n",
       "5269002 37500    1.0\n",
       "5453691 30000    4.0\n",
       "5519962 37500   14.0\n",
       "5520623 30000    6.0\n",
       "5559894 30000   12.0\n",
       "5604926 27500    6.0\n",
       "5683671 26500    3.0\n",
       "5921220 37500    4.5\n",
       "5927901 30000    7.0\n",
       "5978750 40000    4.0\n",
       "5990647 28750    4.5\n",
       "6037742 25000    4.0\n",
       "6046775 30000    5.0\n",
       "6046866 37500    3.0\n",
       "6067812 22500    5.0\n",
       "6095231 40000    2.0\n",
       "6116460 45000    4.0\n",
       "6191993 23750    4.5\n",
       "6228290 37500    5.0\n",
       "6234992 41250    6.0\n",
       "6242470 22500    5.0\n",
       "6267370 20000    7.0\n",
       "6284662 40000    5.0\n",
       "6310387 30000    3.0\n",
       "6339988 45000    5.0\n",
       "6344146 24000    5.0\n",
       "6456921 50000    1.0\n",
       "6458372 60000   24.0\n",
       "...     ...    ...  \n",
       "6794326 24000    4  \n",
       "6802721 37500  233  \n",
       "6803432 30000    0  \n",
       "6804489 33750   16  \n",
       "6804629 30000   17  \n",
       "6813626 30000    1  \n",
       "6814233 30000    5  \n",
       "6818950 30000    1  \n",
       "6819289 30000    4  \n",
       "6820395 60000    3  \n",
       "6829277 27500   12  \n",
       "6829736 30000    4  \n",
       "6837340 30000    4  \n",
       "6841659 30000   65  \n",
       "6847013 30000   17  \n",
       "6848382 45000    4  \n",
       "6849100 35000    0  \n",
       "6850849 32500    6  \n",
       "6854920 37500    3  \n",
       "6862245 22500    6  \n",
       "6869123 37500    5  \n",
       "6872125 37500    4  \n",
       "6872841  7500    3  \n",
       "6877668  3500   80  \n",
       "6882347 50000   66  \n",
       "6882983 27500   15  \n",
       "6884346 25000    0  \n",
       "6886661 37500    5  \n",
       "6888169 42500    1  \n",
       "6896403 30000    3  "
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "df <- df %>%\n",
    "  group_by(positionId) %>%\n",
    "  dplyr::summarise(salary = mean(salary),\n",
    "            score = mean(score)) %>%\n",
    "  as.data.frame(.)\n",
    "rownames(df) <- NULL\n",
    "tibble::column_to_rownames(df,var='positionId')"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 118.同时对salary、score两列进行计算"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "collapsed": false
   },
   "outputs": [],
   "source": [
    "res <- df %>%\n",
    "  select(salary,score) %>%\n",
    "  pivot_longer(c(salary,score),names_to = 'type',values_to = 'value') %>%\n",
    "  group_by(type) %>%\n",
    "  summarise(sum = sum(value),mean = mean(value),min = min(value))\n",
    "\n",
    "rownames(res) <- NULL\n",
    "\n",
    "res %>%\n",
    "  column_to_rownames('type') %>%\n",
    "  t(.)\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 119.对不同列执行不同的计算\n",
    "对salary求平均，对score列求和"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 117,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<table>\n",
       "<thead><tr><th scope=col>salary_sum</th><th scope=col>score_mean</th></tr></thead>\n",
       "<tbody>\n",
       "\t<tr><td>3009750 </td><td>13.42632</td></tr>\n",
       "</tbody>\n",
       "</table>\n"
      ],
      "text/latex": [
       "\\begin{tabular}{r|ll}\n",
       " salary\\_sum & score\\_mean\\\\\n",
       "\\hline\n",
       "\t 3009750  & 13.42632\\\\\n",
       "\\end{tabular}\n"
      ],
      "text/markdown": [
       "\n",
       "salary_sum | score_mean | \n",
       "|---|\n",
       "| 3009750  | 13.42632 | \n",
       "\n",
       "\n"
      ],
      "text/plain": [
       "  salary_sum score_mean\n",
       "1 3009750    13.42632  "
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "df %>%\n",
    "  summarise(salary_sum = sum(salary),\n",
    "            score_mean = mean(score))\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 120.计算并提取平均薪资最高的区"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "collapsed": false
   },
   "outputs": [],
   "source": [
    "df %>%\n",
    "  group_by(district) %>%\n",
    "  summarise(avg = mean(salary)) %>%\n",
    "  arrange(desc(avg)) %>%\n",
    "  filter(row_number() == 1)"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "R",
   "language": "R",
   "name": "ir"
  },
  "language_info": {
   "codemirror_mode": "r",
   "file_extension": ".r",
   "mimetype": "text/x-r-source",
   "name": "R",
   "pygments_lexer": "r",
   "version": "3.3.3"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
